@tamagui/demos 1.95.3 → 1.97.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/cjs/AccordionDemo.js +8 -4
  2. package/dist/cjs/AccordionDemo.js.map +1 -1
  3. package/dist/cjs/AccordionDemo.native.js +20 -6
  4. package/dist/cjs/AccordionDemo.native.js.map +2 -2
  5. package/dist/cjs/NewInputsDemo.js +46 -0
  6. package/dist/cjs/NewInputsDemo.js.map +6 -0
  7. package/dist/cjs/NewInputsDemo.native.js +67 -0
  8. package/dist/cjs/NewInputsDemo.native.js.map +6 -0
  9. package/dist/cjs/RadioGroupHeadlessDemo.js +109 -0
  10. package/dist/cjs/RadioGroupHeadlessDemo.js.map +6 -0
  11. package/dist/cjs/RadioGroupHeadlessDemo.native.js +168 -0
  12. package/dist/cjs/RadioGroupHeadlessDemo.native.js.map +6 -0
  13. package/dist/cjs/RadioGroupUnstyledDemo.js +107 -0
  14. package/dist/cjs/RadioGroupUnstyledDemo.js.map +6 -0
  15. package/dist/cjs/RadioGroupUnstyledDemo.native.js +139 -0
  16. package/dist/cjs/RadioGroupUnstyledDemo.native.js.map +6 -0
  17. package/dist/cjs/SelectDemo.js +0 -22
  18. package/dist/cjs/SelectDemo.js.map +1 -1
  19. package/dist/cjs/SelectDemo.native.js +0 -66
  20. package/dist/cjs/SelectDemo.native.js.map +1 -1
  21. package/dist/cjs/TokensDemo.js +4 -2
  22. package/dist/cjs/TokensDemo.js.map +1 -1
  23. package/dist/cjs/TokensDemo.native.js +5 -5
  24. package/dist/cjs/TokensDemo.native.js.map +2 -2
  25. package/dist/cjs/index.js +3 -0
  26. package/dist/cjs/index.js.map +1 -1
  27. package/dist/cjs/index.native.js +6 -0
  28. package/dist/cjs/index.native.js.map +1 -1
  29. package/dist/esm/AccordionDemo.js +8 -4
  30. package/dist/esm/AccordionDemo.js.map +1 -1
  31. package/dist/esm/AccordionDemo.mjs +20 -6
  32. package/dist/esm/AccordionDemo.native.js +20 -6
  33. package/dist/esm/AccordionDemo.native.js.map +2 -2
  34. package/dist/esm/NewInputsDemo.js +32 -0
  35. package/dist/esm/NewInputsDemo.js.map +6 -0
  36. package/dist/esm/NewInputsDemo.mjs +37 -0
  37. package/dist/esm/NewInputsDemo.native.js +48 -0
  38. package/dist/esm/NewInputsDemo.native.js.map +6 -0
  39. package/dist/esm/RadioGroupHeadlessDemo.js +102 -0
  40. package/dist/esm/RadioGroupHeadlessDemo.js.map +6 -0
  41. package/dist/esm/RadioGroupHeadlessDemo.mjs +133 -0
  42. package/dist/esm/RadioGroupHeadlessDemo.native.js +152 -0
  43. package/dist/esm/RadioGroupHeadlessDemo.native.js.map +6 -0
  44. package/dist/esm/RadioGroupUnstyledDemo.js +93 -0
  45. package/dist/esm/RadioGroupUnstyledDemo.js.map +6 -0
  46. package/dist/esm/RadioGroupUnstyledDemo.mjs +118 -0
  47. package/dist/esm/RadioGroupUnstyledDemo.native.js +121 -0
  48. package/dist/esm/RadioGroupUnstyledDemo.native.js.map +6 -0
  49. package/dist/esm/SelectDemo.js +0 -22
  50. package/dist/esm/SelectDemo.js.map +1 -1
  51. package/dist/esm/SelectDemo.mjs +0 -44
  52. package/dist/esm/SelectDemo.native.js +0 -66
  53. package/dist/esm/SelectDemo.native.js.map +1 -1
  54. package/dist/esm/TokensDemo.js +4 -2
  55. package/dist/esm/TokensDemo.js.map +1 -1
  56. package/dist/esm/TokensDemo.mjs +4 -4
  57. package/dist/esm/TokensDemo.native.js +5 -5
  58. package/dist/esm/TokensDemo.native.js.map +2 -2
  59. package/dist/esm/index.js +3 -0
  60. package/dist/esm/index.js.map +1 -1
  61. package/dist/esm/index.mjs +3 -0
  62. package/dist/esm/index.native.js +3 -0
  63. package/dist/esm/index.native.js.map +1 -1
  64. package/dist/jsx/AccordionDemo.js +8 -4
  65. package/dist/jsx/AccordionDemo.js.map +1 -1
  66. package/dist/jsx/AccordionDemo.mjs +20 -6
  67. package/dist/jsx/AccordionDemo.native.js +20 -6
  68. package/dist/jsx/AccordionDemo.native.js.map +2 -2
  69. package/dist/jsx/NewInputsDemo.js +32 -0
  70. package/dist/jsx/NewInputsDemo.js.map +6 -0
  71. package/dist/jsx/NewInputsDemo.mjs +37 -0
  72. package/dist/jsx/NewInputsDemo.native.js +48 -0
  73. package/dist/jsx/NewInputsDemo.native.js.map +6 -0
  74. package/dist/jsx/RadioGroupHeadlessDemo.js +102 -0
  75. package/dist/jsx/RadioGroupHeadlessDemo.js.map +6 -0
  76. package/dist/jsx/RadioGroupHeadlessDemo.mjs +133 -0
  77. package/dist/jsx/RadioGroupHeadlessDemo.native.js +152 -0
  78. package/dist/jsx/RadioGroupHeadlessDemo.native.js.map +6 -0
  79. package/dist/jsx/RadioGroupUnstyledDemo.js +93 -0
  80. package/dist/jsx/RadioGroupUnstyledDemo.js.map +6 -0
  81. package/dist/jsx/RadioGroupUnstyledDemo.mjs +118 -0
  82. package/dist/jsx/RadioGroupUnstyledDemo.native.js +121 -0
  83. package/dist/jsx/RadioGroupUnstyledDemo.native.js.map +6 -0
  84. package/dist/jsx/SelectDemo.js +0 -22
  85. package/dist/jsx/SelectDemo.js.map +1 -1
  86. package/dist/jsx/SelectDemo.mjs +0 -44
  87. package/dist/jsx/SelectDemo.native.js +0 -66
  88. package/dist/jsx/SelectDemo.native.js.map +1 -1
  89. package/dist/jsx/TokensDemo.js +4 -2
  90. package/dist/jsx/TokensDemo.js.map +1 -1
  91. package/dist/jsx/TokensDemo.mjs +4 -4
  92. package/dist/jsx/TokensDemo.native.js +5 -5
  93. package/dist/jsx/TokensDemo.native.js.map +2 -2
  94. package/dist/jsx/index.js +3 -0
  95. package/dist/jsx/index.js.map +1 -1
  96. package/dist/jsx/index.mjs +3 -0
  97. package/dist/jsx/index.native.js +3 -0
  98. package/dist/jsx/index.native.js.map +1 -1
  99. package/package.json +18 -19
  100. package/src/AccordionDemo.tsx +26 -14
  101. package/src/NewInputsDemo.tsx +30 -0
  102. package/src/RadioGroupHeadlessDemo.tsx +133 -0
  103. package/src/RadioGroupUnstyledDemo.tsx +126 -0
  104. package/src/SelectDemo.tsx +0 -22
  105. package/src/TokensDemo.tsx +7 -5
  106. package/src/index.tsx +3 -0
  107. package/types/AccordionDemo.d.ts.map +1 -1
  108. package/types/CheckboxUnstyledDemo.d.ts +4 -4
  109. package/types/NewInputsDemo.d.ts +2 -0
  110. package/types/NewInputsDemo.d.ts.map +1 -0
  111. package/types/RadioGroupHeadlessDemo.d.ts +2 -0
  112. package/types/RadioGroupHeadlessDemo.d.ts.map +1 -0
  113. package/types/RadioGroupUnstyledDemo.d.ts +2 -0
  114. package/types/RadioGroupUnstyledDemo.d.ts.map +1 -0
  115. package/types/SwitchUnstyledDemo.d.ts +4 -4
  116. package/types/index.d.ts +3 -0
  117. package/types/index.d.ts.map +1 -1
@@ -4,18 +4,22 @@ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
4
4
  function AccordionDemo() {
5
5
  return /* @__PURE__ */ jsxs(Accordion, { overflow: "hidden", width: "$20", type: "multiple", children: [
6
6
  /* @__PURE__ */ jsxs(Accordion.Item, { value: "a1", children: [
7
- /* @__PURE__ */ jsx(Accordion.Trigger, { flexDirection: "row", justifyContent: "space-between", children: ({ open }) => /* @__PURE__ */ jsxs(Fragment, { children: [
7
+ /* @__PURE__ */ jsx(Accordion.Trigger, { flexDirection: "row", justifyContent: "space-between", children: ({
8
+ open
9
+ }) => /* @__PURE__ */ jsxs(Fragment, { children: [
8
10
  /* @__PURE__ */ jsx(Paragraph, { children: "1. Take a cold shower" }),
9
11
  /* @__PURE__ */ jsx(Square, { animation: "quick", rotate: open ? "180deg" : "0deg", children: /* @__PURE__ */ jsx(ChevronDown, { size: "$1" }) })
10
12
  ] }) }),
11
- /* @__PURE__ */ jsx(Accordion.Content, { children: /* @__PURE__ */ jsx(Paragraph, { children: "Cold showers can help reduce inflammation, relieve pain, improve circulation, lower stress levels, and reduce muscle soreness and fatigue." }) })
13
+ /* @__PURE__ */ jsx(Accordion.HeightAnimator, { animation: "medium", children: /* @__PURE__ */ jsx(Accordion.Content, { animation: "medium", exitStyle: { opacity: 0 }, children: /* @__PURE__ */ jsx(Paragraph, { children: "Cold showers can help reduce inflammation, relieve pain, improve circulation, lower stress levels, and reduce muscle soreness and fatigue." }) }) })
12
14
  ] }),
13
15
  /* @__PURE__ */ jsxs(Accordion.Item, { value: "a2", children: [
14
- /* @__PURE__ */ jsx(Accordion.Trigger, { flexDirection: "row", justifyContent: "space-between", children: ({ open }) => /* @__PURE__ */ jsxs(Fragment, { children: [
16
+ /* @__PURE__ */ jsx(Accordion.Trigger, { flexDirection: "row", justifyContent: "space-between", children: ({
17
+ open
18
+ }) => /* @__PURE__ */ jsxs(Fragment, { children: [
15
19
  /* @__PURE__ */ jsx(Paragraph, { children: "2. Eat 4 eggs" }),
16
20
  /* @__PURE__ */ jsx(Square, { animation: "quick", rotate: open ? "180deg" : "0deg", children: /* @__PURE__ */ jsx(ChevronDown, { size: "$1" }) })
17
21
  ] }) }),
18
- /* @__PURE__ */ jsx(Accordion.Content, { children: /* @__PURE__ */ jsx(Paragraph, { children: "Eggs have been a dietary staple since time immemorial and there\u2019s good reason for their continued presence in our menus and meals." }) })
22
+ /* @__PURE__ */ jsx(Accordion.HeightAnimator, { animation: "medium", children: /* @__PURE__ */ jsx(Accordion.Content, { animation: "medium", exitStyle: { opacity: 0 }, children: /* @__PURE__ */ jsx(Paragraph, { children: "Eggs have been a dietary staple since time immemorial and there\u2019s good reason for their continued presence in our menus and meals." }) }) })
19
23
  ] })
20
24
  ] });
21
25
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/AccordionDemo.tsx"],
4
- "mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,WAAW,WAAW,cAAc;AAQjC,mBACE,KADF;AANL,SAAS,gBAAgB;AAC9B,SACE,qBAAC,aAAU,UAAS,UAAS,OAAM,OAAM,MAAK,YAC5C;AAAA,yBAAC,UAAU,MAAV,EAAe,OAAM,MACpB;AAAA,0BAAC,UAAU,SAAV,EAAkB,eAAc,OAAM,gBAAe,iBACnD,WAAC,EAAE,KAAK,MACP,iCACE;AAAA,4BAAC,aAAU,mCAAqB;AAAA,QAChC,oBAAC,UAAO,WAAU,SAAQ,QAAQ,OAAO,WAAW,QAClD,8BAAC,eAAY,MAAK,MAAK,GACzB;AAAA,SACF,GAEJ;AAAA,MACA,oBAAC,UAAU,SAAV,EACC,8BAAC,aAAU,wJAGX,GACF;AAAA,OACF;AAAA,IAEA,qBAAC,UAAU,MAAV,EAAe,OAAM,MACpB;AAAA,0BAAC,UAAU,SAAV,EAAkB,eAAc,OAAM,gBAAe,iBACnD,WAAC,EAAE,KAAK,MACP,iCACE;AAAA,4BAAC,aAAU,2BAAa;AAAA,QACxB,oBAAC,UAAO,WAAU,SAAQ,QAAQ,OAAO,WAAW,QAClD,8BAAC,eAAY,MAAK,MAAK,GACzB;AAAA,SACF,GAEJ;AAAA,MACA,oBAAC,UAAU,SAAV,EACC,8BAAC,aAAU,qJAGX,GACF;AAAA,OACF;AAAA,KACF;AAEJ;",
4
+ "mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,WAAW,WAAW,cAAc;AAYjC,mBACE,KADF;AAVL,SAAS,gBAAgB;AAC9B,SACE,qBAAC,aAAU,UAAS,UAAS,OAAM,OAAM,MAAK,YAC5C;AAAA,yBAAC,UAAU,MAAV,EAAe,OAAM,MACpB;AAAA,0BAAC,UAAU,SAAV,EAAkB,eAAc,OAAM,gBAAe,iBACnD,WAAC;AAAA,QACA;AAAA,MACF,MAGE,iCACE;AAAA,4BAAC,aAAU,mCAAqB;AAAA,QAChC,oBAAC,UAAO,WAAU,SAAQ,QAAQ,OAAO,WAAW,QAClD,8BAAC,eAAY,MAAK,MAAK,GACzB;AAAA,SACF,GAEJ;AAAA,MACA,oBAAC,UAAU,gBAAV,EAAyB,WAAU,UAClC,8BAAC,UAAU,SAAV,EAAkB,WAAU,UAAS,WAAW,EAAE,SAAS,EAAE,GAC5D,8BAAC,aAAU,wJAGX,GACF,GACF;AAAA,OACF;AAAA,IAEA,qBAAC,UAAU,MAAV,EAAe,OAAM,MACpB;AAAA,0BAAC,UAAU,SAAV,EAAkB,eAAc,OAAM,gBAAe,iBACnD,WAAC;AAAA,QACA;AAAA,MACF,MAGE,iCACE;AAAA,4BAAC,aAAU,2BAAa;AAAA,QACxB,oBAAC,UAAO,WAAU,SAAQ,QAAQ,OAAO,WAAW,QAClD,8BAAC,eAAY,MAAK,MAAK,GACzB;AAAA,SACF,GAEJ;AAAA,MACA,oBAAC,UAAU,gBAAV,EAAyB,WAAU,UAClC,8BAAC,UAAU,SAAV,EAAkB,WAAU,UAAS,WAAW,EAAE,SAAS,EAAE,GAC5D,8BAAC,aAAU,qJAGX,GACF,GACF;AAAA,OACF;AAAA,KACF;AAEJ;",
5
5
  "names": []
6
6
  }
@@ -24,9 +24,16 @@ function AccordionDemo() {
24
24
  })
25
25
  })]
26
26
  })
27
- }), /* @__PURE__ */jsx(Accordion.Content, {
28
- children: /* @__PURE__ */jsx(Paragraph, {
29
- children: "Cold showers can help reduce inflammation, relieve pain, improve circulation, lower stress levels, and reduce muscle soreness and fatigue."
27
+ }), /* @__PURE__ */jsx(Accordion.HeightAnimator, {
28
+ animation: "medium",
29
+ children: /* @__PURE__ */jsx(Accordion.Content, {
30
+ animation: "medium",
31
+ exitStyle: {
32
+ opacity: 0
33
+ },
34
+ children: /* @__PURE__ */jsx(Paragraph, {
35
+ children: "Cold showers can help reduce inflammation, relieve pain, improve circulation, lower stress levels, and reduce muscle soreness and fatigue."
36
+ })
30
37
  })
31
38
  })]
32
39
  }), /* @__PURE__ */jsxs(Accordion.Item, {
@@ -47,9 +54,16 @@ function AccordionDemo() {
47
54
  })
48
55
  })]
49
56
  })
50
- }), /* @__PURE__ */jsx(Accordion.Content, {
51
- children: /* @__PURE__ */jsx(Paragraph, {
52
- children: "Eggs have been a dietary staple since time immemorial and there\u2019s good reason for their continued presence in our menus and meals."
57
+ }), /* @__PURE__ */jsx(Accordion.HeightAnimator, {
58
+ animation: "medium",
59
+ children: /* @__PURE__ */jsx(Accordion.Content, {
60
+ animation: "medium",
61
+ exitStyle: {
62
+ opacity: 0
63
+ },
64
+ children: /* @__PURE__ */jsx(Paragraph, {
65
+ children: "Eggs have been a dietary staple since time immemorial and there\u2019s good reason for their continued presence in our menus and meals."
66
+ })
53
67
  })
54
68
  })]
55
69
  })]
@@ -31,9 +31,16 @@ function AccordionDemo() {
31
31
  });
32
32
  }
33
33
  }),
34
- /* @__PURE__ */ _jsx(Accordion.Content, {
35
- children: /* @__PURE__ */ _jsx(Paragraph, {
36
- children: "Cold showers can help reduce inflammation, relieve pain, improve circulation, lower stress levels, and reduce muscle soreness and fatigue."
34
+ /* @__PURE__ */ _jsx(Accordion.HeightAnimator, {
35
+ animation: "medium",
36
+ children: /* @__PURE__ */ _jsx(Accordion.Content, {
37
+ animation: "medium",
38
+ exitStyle: {
39
+ opacity: 0
40
+ },
41
+ children: /* @__PURE__ */ _jsx(Paragraph, {
42
+ children: "Cold showers can help reduce inflammation, relieve pain, improve circulation, lower stress levels, and reduce muscle soreness and fatigue."
43
+ })
37
44
  })
38
45
  })
39
46
  ]
@@ -62,9 +69,16 @@ function AccordionDemo() {
62
69
  });
63
70
  }
64
71
  }),
65
- /* @__PURE__ */ _jsx(Accordion.Content, {
66
- children: /* @__PURE__ */ _jsx(Paragraph, {
67
- children: "Eggs have been a dietary staple since time immemorial and there\u2019s good reason for their continued presence in our menus and meals."
72
+ /* @__PURE__ */ _jsx(Accordion.HeightAnimator, {
73
+ animation: "medium",
74
+ children: /* @__PURE__ */ _jsx(Accordion.Content, {
75
+ animation: "medium",
76
+ exitStyle: {
77
+ opacity: 0
78
+ },
79
+ children: /* @__PURE__ */ _jsx(Paragraph, {
80
+ children: "Eggs have been a dietary staple since time immemorial and there\u2019s good reason for their continued presence in our menus and meals."
81
+ })
68
82
  })
69
83
  })
70
84
  ]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/packages/demos/src/AccordionDemo.tsx"],
4
- "mappings": ";AAAA,SAASA,mBAAmB;AAC5B,SAASC,WAAWC,WAAWC,cAAc;AAEtC,SAASC,gBAAAA;AACd,SACE,sBAACH,WAAAA;IAAUI,UAAS;IAASC,OAAM;IAAMC,MAAK;;MAC5C,sBAACN,UAAUO,MAAI;QAACC,OAAM;;UACpB,qBAACR,UAAUS,SAAO;YAACC,eAAc;YAAMC,gBAAe;sBACnD,SAAA,OAAA;kBAAGC,OAAAA,MAAAA;qBACF,sBAAA,WAAA;;kBACE,qBAACX,WAAAA;8BAAU;;kBACX,qBAACC,QAAAA;oBAAOW,WAAU;oBAAQC,QAAQF,OAAO,WAAW;8BAClD,qBAACb,aAAAA;sBAAYgB,MAAK;;;;;;;UAK1B,qBAACf,UAAUgB,SAAO;sBAChB,qBAACf,WAAAA;wBAAU;;;;;MAOf,sBAACD,UAAUO,MAAI;QAACC,OAAM;;UACpB,qBAACR,UAAUS,SAAO;YAACC,eAAc;YAAMC,gBAAe;sBACnD,SAAA,OAAA;kBAAGC,OAAAA,MAAAA;qBACF,sBAAA,WAAA;;kBACE,qBAACX,WAAAA;8BAAU;;kBACX,qBAACC,QAAAA;oBAAOW,WAAU;oBAAQC,QAAQF,OAAO,WAAW;8BAClD,qBAACb,aAAAA;sBAAYgB,MAAK;;;;;;;UAK1B,qBAACf,UAAUgB,SAAO;sBAChB,qBAACf,WAAAA;wBAAU;;;;;;;AAQrB;",
5
- "names": ["ChevronDown", "Accordion", "Paragraph", "Square", "AccordionDemo", "overflow", "width", "type", "Item", "value", "Trigger", "flexDirection", "justifyContent", "open", "animation", "rotate", "size", "Content"]
4
+ "mappings": ";AAAA,SAASA,mBAAmB;AAC5B,SAASC,WAAWC,WAAWC,cAAc;AAEtC,SAASC,gBAAAA;AACd,SACE,sBAACH,WAAAA;IAAUI,UAAS;IAASC,OAAM;IAAMC,MAAK;;MAC5C,sBAACN,UAAUO,MAAI;QAACC,OAAM;;UACpB,qBAACR,UAAUS,SAAO;YAACC,eAAc;YAAMC,gBAAe;sBACnD,SAAA,OAAA;kBACCC,OAAAA,MAAAA;qBAIA,sBAAA,WAAA;;kBACE,qBAACX,WAAAA;8BAAU;;kBACX,qBAACC,QAAAA;oBAAOW,WAAU;oBAAQC,QAAQF,OAAO,WAAW;8BAClD,qBAACb,aAAAA;sBAAYgB,MAAK;;;;;;;UAK1B,qBAACf,UAAUgB,gBAAc;YAACH,WAAU;sBAClC,qBAACb,UAAUiB,SAAO;cAACJ,WAAU;cAASK,WAAW;gBAAEC,SAAS;cAAE;wBAC5D,qBAAClB,WAAAA;0BAAU;;;;;;MAQjB,sBAACD,UAAUO,MAAI;QAACC,OAAM;;UACpB,qBAACR,UAAUS,SAAO;YAACC,eAAc;YAAMC,gBAAe;sBACnD,SAAA,OAAA;kBACCC,OAAAA,MAAAA;qBAIA,sBAAA,WAAA;;kBACE,qBAACX,WAAAA;8BAAU;;kBACX,qBAACC,QAAAA;oBAAOW,WAAU;oBAAQC,QAAQF,OAAO,WAAW;8BAClD,qBAACb,aAAAA;sBAAYgB,MAAK;;;;;;;UAK1B,qBAACf,UAAUgB,gBAAc;YAACH,WAAU;sBAClC,qBAACb,UAAUiB,SAAO;cAACJ,WAAU;cAASK,WAAW;gBAAEC,SAAS;cAAE;wBAC5D,qBAAClB,WAAAA;0BAAU;;;;;;;;AASvB;",
5
+ "names": ["ChevronDown", "Accordion", "Paragraph", "Square", "AccordionDemo", "overflow", "width", "type", "Item", "value", "Trigger", "flexDirection", "justifyContent", "open", "animation", "rotate", "size", "HeightAnimator", "Content", "exitStyle", "opacity"]
6
6
  }
@@ -0,0 +1,32 @@
1
+ import { Button, XStack, YStack } from "tamagui";
2
+ import { Input, TextArea } from "@tamagui/input";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ function NewInputsDemo() {
5
+ return /* @__PURE__ */ jsxs(
6
+ YStack,
7
+ {
8
+ width: 200,
9
+ minHeight: 250,
10
+ overflow: "hidden",
11
+ space: "$2",
12
+ margin: "$3",
13
+ padding: "$2",
14
+ children: [
15
+ /* @__PURE__ */ jsx(InputDemo, { size: "$2" }),
16
+ /* @__PURE__ */ jsx(InputDemo, { size: "$3" }),
17
+ /* @__PURE__ */ jsx(InputDemo, { size: "$4" }),
18
+ /* @__PURE__ */ jsx(TextArea, { placeholder: "Enter your details..." })
19
+ ]
20
+ }
21
+ );
22
+ }
23
+ function InputDemo(props) {
24
+ return /* @__PURE__ */ jsxs(XStack, { alignItems: "center", space: "$2", children: [
25
+ /* @__PURE__ */ jsx(Input, { flex: 1, size: props.size, placeholder: `Size ${props.size}...` }),
26
+ /* @__PURE__ */ jsx(Button, { size: props.size, children: "Go" })
27
+ ] });
28
+ }
29
+ export {
30
+ NewInputsDemo
31
+ };
32
+ //# sourceMappingURL=NewInputsDemo.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/NewInputsDemo.tsx"],
4
+ "mappings": "AACA,SAAS,QAAQ,QAAQ,cAAc;AACvC,SAAS,OAAO,gBAAgB;AAI5B,SAQE,KARF;AAFG,SAAS,gBAAgB;AAC9B,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAO;AAAA,MACP,WAAW;AAAA,MACX,UAAS;AAAA,MACT,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MAER;AAAA,4BAAC,aAAU,MAAK,MAAK;AAAA,QACrB,oBAAC,aAAU,MAAK,MAAK;AAAA,QACrB,oBAAC,aAAU,MAAK,MAAK;AAAA,QACrB,oBAAC,YAAS,aAAY,yBAAwB;AAAA;AAAA;AAAA,EAChD;AAEJ;AAEA,SAAS,UAAU,OAA6B;AAC9C,SACE,qBAAC,UAAO,YAAW,UAAS,OAAM,MAChC;AAAA,wBAAC,SAAM,MAAM,GAAG,MAAM,MAAM,MAAM,aAAa,QAAQ,MAAM,IAAI,OAAO;AAAA,IACxE,oBAAC,UAAO,MAAM,MAAM,MAAM,gBAAE;AAAA,KAC9B;AAEJ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,37 @@
1
+ import { Button, XStack, YStack } from "tamagui";
2
+ import { Input, TextArea } from "@tamagui/input";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ function NewInputsDemo() {
5
+ return /* @__PURE__ */jsxs(YStack, {
6
+ width: 200,
7
+ minHeight: 250,
8
+ overflow: "hidden",
9
+ space: "$2",
10
+ margin: "$3",
11
+ padding: "$2",
12
+ children: [/* @__PURE__ */jsx(InputDemo, {
13
+ size: "$2"
14
+ }), /* @__PURE__ */jsx(InputDemo, {
15
+ size: "$3"
16
+ }), /* @__PURE__ */jsx(InputDemo, {
17
+ size: "$4"
18
+ }), /* @__PURE__ */jsx(TextArea, {
19
+ placeholder: "Enter your details..."
20
+ })]
21
+ });
22
+ }
23
+ function InputDemo(props) {
24
+ return /* @__PURE__ */jsxs(XStack, {
25
+ alignItems: "center",
26
+ space: "$2",
27
+ children: [/* @__PURE__ */jsx(Input, {
28
+ flex: 1,
29
+ size: props.size,
30
+ placeholder: `Size ${props.size}...`
31
+ }), /* @__PURE__ */jsx(Button, {
32
+ size: props.size,
33
+ children: "Go"
34
+ })]
35
+ });
36
+ }
37
+ export { NewInputsDemo };
@@ -0,0 +1,48 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Button, XStack, YStack } from "tamagui";
3
+ import { Input, TextArea } from "@tamagui/input";
4
+ function NewInputsDemo() {
5
+ return /* @__PURE__ */ _jsxs(YStack, {
6
+ width: 200,
7
+ minHeight: 250,
8
+ overflow: "hidden",
9
+ space: "$2",
10
+ margin: "$3",
11
+ padding: "$2",
12
+ children: [
13
+ /* @__PURE__ */ _jsx(InputDemo, {
14
+ size: "$2"
15
+ }),
16
+ /* @__PURE__ */ _jsx(InputDemo, {
17
+ size: "$3"
18
+ }),
19
+ /* @__PURE__ */ _jsx(InputDemo, {
20
+ size: "$4"
21
+ }),
22
+ /* @__PURE__ */ _jsx(TextArea, {
23
+ placeholder: "Enter your details..."
24
+ })
25
+ ]
26
+ });
27
+ }
28
+ function InputDemo(props) {
29
+ return /* @__PURE__ */ _jsxs(XStack, {
30
+ alignItems: "center",
31
+ space: "$2",
32
+ children: [
33
+ /* @__PURE__ */ _jsx(Input, {
34
+ flex: 1,
35
+ size: props.size,
36
+ placeholder: "Size ".concat(props.size, "...")
37
+ }),
38
+ /* @__PURE__ */ _jsx(Button, {
39
+ size: props.size,
40
+ children: "Go"
41
+ })
42
+ ]
43
+ });
44
+ }
45
+ export {
46
+ NewInputsDemo
47
+ };
48
+ //# sourceMappingURL=NewInputsDemo.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/Users/n8/tamagui/packages/demos/src/NewInputsDemo.tsx"],
4
+ "mappings": ";AACA,SAASA,QAAQC,QAAQC,cAAc;AACvC,SAASC,OAAOC,gBAAgB;AAEzB,SAASC,gBAAAA;AACd,SACE,sBAACH,QAAAA;IACCI,OAAO;IACPC,WAAW;IACXC,UAAS;IACTC,OAAM;IACNC,QAAO;IACPC,SAAQ;;MAER,qBAACC,WAAAA;QAAUC,MAAK;;MAChB,qBAACD,WAAAA;QAAUC,MAAK;;MAChB,qBAACD,WAAAA;QAAUC,MAAK;;MAChB,qBAACT,UAAAA;QAASU,aAAY;;;;AAG5B;AAEA,SAASF,UAAUG,OAA2B;AAC5C,SACE,sBAACd,QAAAA;IAAOe,YAAW;IAASP,OAAM;;MAChC,qBAACN,OAAAA;QAAMc,MAAM;QAAGJ,MAAME,MAAMF;QAAMC,aAAc,QAAkB,OAAXC,MAAMF,MAAK,KAAA;;MAClE,qBAACb,QAAAA;QAAOa,MAAME,MAAMF;kBAAM;;;;AAGhC;",
5
+ "names": ["Button", "XStack", "YStack", "Input", "TextArea", "NewInputsDemo", "width", "minHeight", "overflow", "space", "margin", "padding", "InputDemo", "size", "placeholder", "props", "alignItems", "flex"]
6
+ }
@@ -0,0 +1,102 @@
1
+ import {
2
+ useRadioGroup,
3
+ useRadioGroupItem,
4
+ useRadioGroupItemIndicator
5
+ } from "@tamagui/radio-headless";
6
+ import { RovingFocusGroup } from "@tamagui/roving-focus";
7
+ import { createContext } from "react";
8
+ import { StyleSheet, View, Pressable, Text } from "react-native-web";
9
+ import { isWeb, useTheme } from "tamagui";
10
+ import { jsx, jsxs } from "react/jsx-runtime";
11
+ const RadioGroupContext = createContext({}), RadioGroupItemContext = createContext({
12
+ checked: !1,
13
+ disabled: !1
14
+ });
15
+ function RadioGroupHeadlessDemo() {
16
+ const { providerValue, frameAttrs, rovingFocusGroupAttrs } = useRadioGroup({
17
+ orientation: "vertical",
18
+ name: "form",
19
+ defaultValue: "3"
20
+ });
21
+ return /* @__PURE__ */ jsx(RadioGroupContext.Provider, { value: providerValue, children: /* @__PURE__ */ jsx(RovingFocusGroup, { ...rovingFocusGroupAttrs, children: /* @__PURE__ */ jsxs(View, { style: styles.radioGroup, ...frameAttrs, children: [
22
+ /* @__PURE__ */ jsx(RadioGroupItem, { value: "2", id: "2", label: "First Value" }),
23
+ /* @__PURE__ */ jsx(RadioGroupItem, { value: "3", id: "3", label: "Second Value" }),
24
+ /* @__PURE__ */ jsx(RadioGroupItem, { value: "4", id: "4", label: "Third Value" })
25
+ ] }) }) });
26
+ }
27
+ function RadioGroupItem(props) {
28
+ const theme = useTheme(), { value, id, label } = props, {
29
+ providerValue,
30
+ native,
31
+ bubbleInput,
32
+ rovingFocusGroupAttrs,
33
+ frameAttrs,
34
+ isFormControl,
35
+ checked
36
+ } = useRadioGroupItem({
37
+ radioGroupContext: RadioGroupContext,
38
+ value,
39
+ id
40
+ });
41
+ return /* @__PURE__ */ jsx(RadioGroupItemContext.Provider, { value: providerValue, children: isWeb && native ? bubbleInput : /* @__PURE__ */ jsxs(View, { style: styles.radioGroupItemContainer, children: [
42
+ /* @__PURE__ */ jsx(RovingFocusGroup.Item, { ...rovingFocusGroupAttrs, children: /* @__PURE__ */ jsx(
43
+ Pressable,
44
+ {
45
+ style: {
46
+ ...styles.radioGroupItem,
47
+ borderColor: theme.borderColor.get(),
48
+ ...checked ? { borderWidth: 4 } : { backgroundColor: theme.background.get() }
49
+ },
50
+ ...frameAttrs,
51
+ onFocus: frameAttrs.onFocus,
52
+ children: /* @__PURE__ */ jsx(RadioGroupItemIndicator, {})
53
+ }
54
+ ) }),
55
+ /* @__PURE__ */ jsx(Text, { style: { color: theme.color.get() }, children: label }),
56
+ isFormControl && bubbleInput
57
+ ] }) });
58
+ }
59
+ function RadioGroupItemIndicator() {
60
+ const theme = useTheme(), params = useRadioGroupItemIndicator({
61
+ radioGroupItemContext: RadioGroupItemContext,
62
+ disabled: !1
63
+ });
64
+ return params.checked ? /* @__PURE__ */ jsx(
65
+ View,
66
+ {
67
+ style: {
68
+ ...styles.radioGroupItemIndicator,
69
+ backgroundColor: theme.color.get()
70
+ },
71
+ ...params
72
+ }
73
+ ) : null;
74
+ }
75
+ const styles = StyleSheet.create({
76
+ radioGroup: {
77
+ flexDirection: "column",
78
+ gap: 20,
79
+ alignItems: "flex-start"
80
+ },
81
+ radioGroupItem: {
82
+ borderWidth: 2,
83
+ width: 30,
84
+ height: 30,
85
+ justifyContent: "center",
86
+ alignItems: "center"
87
+ },
88
+ radioGroupItemIndicator: {
89
+ width: "35%",
90
+ height: "35%"
91
+ },
92
+ radioGroupItemContainer: {
93
+ justifyContent: "center",
94
+ alignItems: "center",
95
+ flexDirection: "row",
96
+ gap: 12
97
+ }
98
+ });
99
+ export {
100
+ RadioGroupHeadlessDemo
101
+ };
102
+ //# sourceMappingURL=RadioGroupHeadlessDemo.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/RadioGroupHeadlessDemo.tsx"],
4
+ "mappings": "AAIA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,wBAAwB;AACjC,SAAS,qBAAqB;AAC9B,SAAS,YAAY,MAAM,WAAW,YAAY;AAClD,SAAS,OAAO,gBAAgB;AAiBxB,SACE,KADF;AAfR,MAAM,oBAAoB,cAAsC,CAAC,CAAC,GAC5D,wBAAwB,cAA0C;AAAA,EACtE,SAAS;AAAA,EACT,UAAU;AACZ,CAAC;AAEM,SAAS,yBAAyB;AACvC,QAAM,EAAE,eAAe,YAAY,sBAAsB,IAAI,cAAc;AAAA,IACzE,aAAa;AAAA,IACb,MAAM;AAAA,IACN,cAAc;AAAA,EAChB,CAAC;AACD,SACE,oBAAC,kBAAkB,UAAlB,EAA2B,OAAO,eACjC,8BAAC,oBAAkB,GAAG,uBACpB,+BAAC,QAAK,OAAO,OAAO,YAAa,GAAG,YAClC;AAAA,wBAAC,kBAAe,OAAM,KAAI,IAAG,KAAI,OAAM,eAAc;AAAA,IACrD,oBAAC,kBAAe,OAAM,KAAI,IAAG,KAAI,OAAM,gBAAe;AAAA,IACtD,oBAAC,kBAAe,OAAM,KAAI,IAAG,KAAI,OAAM,eAAc;AAAA,KACvD,GACF,GACF;AAEJ;AAEA,SAAS,eAAe,OAIrB;AACD,QAAM,QAAQ,SAAS,GACjB,EAAE,OAAO,IAAI,MAAM,IAAI,OACvB;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,kBAAkB;AAAA,IACpB,mBAAmB;AAAA,IACnB;AAAA,IACA;AAAA,EACF,CAAC;AAED,SACE,oBAAC,sBAAsB,UAAtB,EAA+B,OAAO,eACpC,mBAAS,SACR,cAEA,qBAAC,QAAK,OAAO,OAAO,yBAClB;AAAA,wBAAC,iBAAiB,MAAjB,EAAuB,GAAG,uBACzB;AAAA,MAAC;AAAA;AAAA,QACC,OAAO;AAAA,UACL,GAAG,OAAO;AAAA,UACL,aAAa,MAAM,YAAY,IAAI;AAAA,UACxC,GAAI,UACA,EAAE,aAAa,EAAE,IACjB,EAAE,iBAAiB,MAAM,WAAW,IAAI,EAAE;AAAA,QAChD;AAAA,QACC,GAAG;AAAA,QACJ,SAAS,WAAW;AAAA,QAEpB,8BAAC,2BAAwB;AAAA;AAAA,IAC3B,GACF;AAAA,IACA,oBAAC,QAAK,OAAO,EAAE,OAAO,MAAM,MAAM,IAAI,EAAE,GAAI,iBAAM;AAAA,IACjD,iBAAiB;AAAA,KACpB,GAEJ;AAEJ;AAEA,SAAS,0BAA0B;AACjC,QAAM,QAAQ,SAAS,GACjB,SAAS,2BAA2B;AAAA,IACxC,uBAAuB;AAAA,IACvB,UAAU;AAAA,EACZ,CAAC;AACD,SAAI,OAAO,UAEP;AAAA,IAAC;AAAA;AAAA,MACC,OAAO;AAAA,QACL,GAAG,OAAO;AAAA,QACV,iBAAiB,MAAM,MAAM,IAAI;AAAA,MACnC;AAAA,MACC,GAAG;AAAA;AAAA,EACN,IAGG;AACT;AAEA,MAAM,SAAS,WAAW,OAAO;AAAA,EAC/B,YAAY;AAAA,IACV,eAAe;AAAA,IACf,KAAK;AAAA,IACL,YAAY;AAAA,EACd;AAAA,EACA,gBAAgB;AAAA,IACd,aAAa;AAAA,IACb,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,YAAY;AAAA,EACd;AAAA,EACA,yBAAyB;AAAA,IACvB,OAAO;AAAA,IACP,QAAQ;AAAA,EACV;AAAA,EACA,yBAAyB;AAAA,IACvB,gBAAgB;AAAA,IAChB,YAAY;AAAA,IACZ,eAAe;AAAA,IACf,KAAK;AAAA,EACP;AACF,CAAC;",
5
+ "names": []
6
+ }
@@ -0,0 +1,133 @@
1
+ import { useRadioGroup, useRadioGroupItem, useRadioGroupItemIndicator } from "@tamagui/radio-headless";
2
+ import { RovingFocusGroup } from "@tamagui/roving-focus";
3
+ import { createContext } from "react";
4
+ import { StyleSheet, View, Pressable, Text } from "react-native-web";
5
+ import { isWeb, useTheme } from "tamagui";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ const RadioGroupContext = createContext({}),
8
+ RadioGroupItemContext = createContext({
9
+ checked: !1,
10
+ disabled: !1
11
+ });
12
+ function RadioGroupHeadlessDemo() {
13
+ const {
14
+ providerValue,
15
+ frameAttrs,
16
+ rovingFocusGroupAttrs
17
+ } = useRadioGroup({
18
+ orientation: "vertical",
19
+ name: "form",
20
+ defaultValue: "3"
21
+ });
22
+ return /* @__PURE__ */jsx(RadioGroupContext.Provider, {
23
+ value: providerValue,
24
+ children: /* @__PURE__ */jsx(RovingFocusGroup, {
25
+ ...rovingFocusGroupAttrs,
26
+ children: /* @__PURE__ */jsxs(View, {
27
+ style: styles.radioGroup,
28
+ ...frameAttrs,
29
+ children: [/* @__PURE__ */jsx(RadioGroupItem, {
30
+ value: "2",
31
+ id: "2",
32
+ label: "First Value"
33
+ }), /* @__PURE__ */jsx(RadioGroupItem, {
34
+ value: "3",
35
+ id: "3",
36
+ label: "Second Value"
37
+ }), /* @__PURE__ */jsx(RadioGroupItem, {
38
+ value: "4",
39
+ id: "4",
40
+ label: "Third Value"
41
+ })]
42
+ })
43
+ })
44
+ });
45
+ }
46
+ function RadioGroupItem(props) {
47
+ const theme = useTheme(),
48
+ {
49
+ value,
50
+ id,
51
+ label
52
+ } = props,
53
+ {
54
+ providerValue,
55
+ native,
56
+ bubbleInput,
57
+ rovingFocusGroupAttrs,
58
+ frameAttrs,
59
+ isFormControl,
60
+ checked
61
+ } = useRadioGroupItem({
62
+ radioGroupContext: RadioGroupContext,
63
+ value,
64
+ id
65
+ });
66
+ return /* @__PURE__ */jsx(RadioGroupItemContext.Provider, {
67
+ value: providerValue,
68
+ children: isWeb && native ? bubbleInput : /* @__PURE__ */jsxs(View, {
69
+ style: styles.radioGroupItemContainer,
70
+ children: [/* @__PURE__ */jsx(RovingFocusGroup.Item, {
71
+ ...rovingFocusGroupAttrs,
72
+ children: /* @__PURE__ */jsx(Pressable, {
73
+ style: {
74
+ ...styles.radioGroupItem,
75
+ borderColor: theme.borderColor.get(),
76
+ ...(checked ? {
77
+ borderWidth: 4
78
+ } : {
79
+ backgroundColor: theme.background.get()
80
+ })
81
+ },
82
+ ...frameAttrs,
83
+ onFocus: frameAttrs.onFocus,
84
+ children: /* @__PURE__ */jsx(RadioGroupItemIndicator, {})
85
+ })
86
+ }), /* @__PURE__ */jsx(Text, {
87
+ style: {
88
+ color: theme.color.get()
89
+ },
90
+ children: label
91
+ }), isFormControl && bubbleInput]
92
+ })
93
+ });
94
+ }
95
+ function RadioGroupItemIndicator() {
96
+ const theme = useTheme(),
97
+ params = useRadioGroupItemIndicator({
98
+ radioGroupItemContext: RadioGroupItemContext,
99
+ disabled: !1
100
+ });
101
+ return params.checked ? /* @__PURE__ */jsx(View, {
102
+ style: {
103
+ ...styles.radioGroupItemIndicator,
104
+ backgroundColor: theme.color.get()
105
+ },
106
+ ...params
107
+ }) : null;
108
+ }
109
+ const styles = StyleSheet.create({
110
+ radioGroup: {
111
+ flexDirection: "column",
112
+ gap: 20,
113
+ alignItems: "flex-start"
114
+ },
115
+ radioGroupItem: {
116
+ borderWidth: 2,
117
+ width: 30,
118
+ height: 30,
119
+ justifyContent: "center",
120
+ alignItems: "center"
121
+ },
122
+ radioGroupItemIndicator: {
123
+ width: "35%",
124
+ height: "35%"
125
+ },
126
+ radioGroupItemContainer: {
127
+ justifyContent: "center",
128
+ alignItems: "center",
129
+ flexDirection: "row",
130
+ gap: 12
131
+ }
132
+ });
133
+ export { RadioGroupHeadlessDemo };
@@ -0,0 +1,152 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useRadioGroup, useRadioGroupItem, useRadioGroupItemIndicator } from "@tamagui/radio-headless";
3
+ import { RovingFocusGroup } from "@tamagui/roving-focus";
4
+ import { createContext } from "react";
5
+ import { StyleSheet, View, Pressable, Text } from "react-native";
6
+ import { isWeb, useTheme } from "tamagui";
7
+ function _define_property(obj, key, value) {
8
+ return key in obj ? Object.defineProperty(obj, key, {
9
+ value,
10
+ enumerable: !0,
11
+ configurable: !0,
12
+ writable: !0
13
+ }) : obj[key] = value, obj;
14
+ }
15
+ function _object_spread(target) {
16
+ for (var i = 1; i < arguments.length; i++) {
17
+ var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
18
+ typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
19
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
20
+ }))), ownKeys2.forEach(function(key) {
21
+ _define_property(target, key, source[key]);
22
+ });
23
+ }
24
+ return target;
25
+ }
26
+ function ownKeys(object, enumerableOnly) {
27
+ var keys = Object.keys(object);
28
+ if (Object.getOwnPropertySymbols) {
29
+ var symbols = Object.getOwnPropertySymbols(object);
30
+ enumerableOnly && (symbols = symbols.filter(function(sym) {
31
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
32
+ })), keys.push.apply(keys, symbols);
33
+ }
34
+ return keys;
35
+ }
36
+ function _object_spread_props(target, source) {
37
+ return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
38
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
39
+ }), target;
40
+ }
41
+ var RadioGroupContext = /* @__PURE__ */ createContext({}), RadioGroupItemContext = /* @__PURE__ */ createContext({
42
+ checked: !1,
43
+ disabled: !1
44
+ });
45
+ function RadioGroupHeadlessDemo() {
46
+ var _useRadioGroup = useRadioGroup({
47
+ orientation: "vertical",
48
+ name: "form",
49
+ defaultValue: "3"
50
+ }), providerValue = _useRadioGroup.providerValue, frameAttrs = _useRadioGroup.frameAttrs, rovingFocusGroupAttrs = _useRadioGroup.rovingFocusGroupAttrs;
51
+ return /* @__PURE__ */ _jsx(RadioGroupContext.Provider, {
52
+ value: providerValue,
53
+ children: /* @__PURE__ */ _jsx(RovingFocusGroup, _object_spread_props(_object_spread({}, rovingFocusGroupAttrs), {
54
+ children: /* @__PURE__ */ _jsxs(View, _object_spread_props(_object_spread({
55
+ style: styles.radioGroup
56
+ }, frameAttrs), {
57
+ children: [
58
+ /* @__PURE__ */ _jsx(RadioGroupItem, {
59
+ value: "2",
60
+ id: "2",
61
+ label: "First Value"
62
+ }),
63
+ /* @__PURE__ */ _jsx(RadioGroupItem, {
64
+ value: "3",
65
+ id: "3",
66
+ label: "Second Value"
67
+ }),
68
+ /* @__PURE__ */ _jsx(RadioGroupItem, {
69
+ value: "4",
70
+ id: "4",
71
+ label: "Third Value"
72
+ })
73
+ ]
74
+ }))
75
+ }))
76
+ });
77
+ }
78
+ function RadioGroupItem(props) {
79
+ var theme = useTheme(), value = props.value, id = props.id, label = props.label, _useRadioGroupItem = useRadioGroupItem({
80
+ radioGroupContext: RadioGroupContext,
81
+ value,
82
+ id
83
+ }), providerValue = _useRadioGroupItem.providerValue, native = _useRadioGroupItem.native, bubbleInput = _useRadioGroupItem.bubbleInput, rovingFocusGroupAttrs = _useRadioGroupItem.rovingFocusGroupAttrs, frameAttrs = _useRadioGroupItem.frameAttrs, isFormControl = _useRadioGroupItem.isFormControl, checked = _useRadioGroupItem.checked;
84
+ return /* @__PURE__ */ _jsx(RadioGroupItemContext.Provider, {
85
+ value: providerValue,
86
+ children: isWeb && native ? bubbleInput : /* @__PURE__ */ _jsxs(View, {
87
+ style: styles.radioGroupItemContainer,
88
+ children: [
89
+ /* @__PURE__ */ _jsx(RovingFocusGroup.Item, _object_spread_props(_object_spread({}, rovingFocusGroupAttrs), {
90
+ children: /* @__PURE__ */ _jsx(Pressable, _object_spread_props(_object_spread({
91
+ style: _object_spread({}, styles.radioGroupItem, {
92
+ borderColor: theme.borderColor.get()
93
+ }, checked ? {
94
+ borderWidth: 4
95
+ } : {
96
+ backgroundColor: theme.background.get()
97
+ })
98
+ }, frameAttrs), {
99
+ onFocus: frameAttrs.onFocus,
100
+ children: /* @__PURE__ */ _jsx(RadioGroupItemIndicator, {})
101
+ }))
102
+ })),
103
+ /* @__PURE__ */ _jsx(Text, {
104
+ style: {
105
+ color: theme.color.get()
106
+ },
107
+ children: label
108
+ }),
109
+ isFormControl && bubbleInput
110
+ ]
111
+ })
112
+ });
113
+ }
114
+ function RadioGroupItemIndicator() {
115
+ var theme = useTheme(), params = useRadioGroupItemIndicator({
116
+ radioGroupItemContext: RadioGroupItemContext,
117
+ disabled: !1
118
+ });
119
+ return params.checked ? /* @__PURE__ */ _jsx(View, _object_spread({
120
+ style: _object_spread_props(_object_spread({}, styles.radioGroupItemIndicator), {
121
+ backgroundColor: theme.color.get()
122
+ })
123
+ }, params)) : null;
124
+ }
125
+ var styles = StyleSheet.create({
126
+ radioGroup: {
127
+ flexDirection: "column",
128
+ gap: 20,
129
+ alignItems: "flex-start"
130
+ },
131
+ radioGroupItem: {
132
+ borderWidth: 2,
133
+ width: 30,
134
+ height: 30,
135
+ justifyContent: "center",
136
+ alignItems: "center"
137
+ },
138
+ radioGroupItemIndicator: {
139
+ width: "35%",
140
+ height: "35%"
141
+ },
142
+ radioGroupItemContainer: {
143
+ justifyContent: "center",
144
+ alignItems: "center",
145
+ flexDirection: "row",
146
+ gap: 12
147
+ }
148
+ });
149
+ export {
150
+ RadioGroupHeadlessDemo
151
+ };
152
+ //# sourceMappingURL=RadioGroupHeadlessDemo.js.map