@coze-arch/cli 0.0.10-alpha.11b7ea → 0.0.10-alpha.954690

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 (433) hide show
  1. package/lib/__templates__/expo/AGENTS.md +3 -3
  2. package/lib/__templates__/expo/README.md +3 -3
  3. package/lib/__templates__/expo/client/components/Provider.tsx +1 -4
  4. package/lib/__templates__/expo/client/components/Screen.tsx +1 -4
  5. package/lib/__templates__/expo/client/eslint.config.mjs +0 -2
  6. package/lib/__templates__/expo/client/global.css +0 -1
  7. package/lib/__templates__/expo/client/package.json +1 -4
  8. package/lib/__templates__/expo/package.json +1 -1
  9. package/lib/__templates__/expo/pnpm-lock.yaml +0 -68
  10. package/lib/__templates__/nextjs/AGENTS.md +6 -2
  11. package/lib/__templates__/nextjs/eslint.config.mjs +9 -0
  12. package/lib/__templates__/taro/project.config.json +1 -1
  13. package/lib/cli.js +4 -15
  14. package/package.json +1 -1
  15. package/lib/__templates__/expo/client/heroui/components/accordion/accordion.animation.ts +0 -178
  16. package/lib/__templates__/expo/client/heroui/components/accordion/accordion.constants.ts +0 -62
  17. package/lib/__templates__/expo/client/heroui/components/accordion/accordion.md +0 -437
  18. package/lib/__templates__/expo/client/heroui/components/accordion/accordion.styles.ts +0 -95
  19. package/lib/__templates__/expo/client/heroui/components/accordion/accordion.tsx +0 -340
  20. package/lib/__templates__/expo/client/heroui/components/accordion/accordion.types.ts +0 -267
  21. package/lib/__templates__/expo/client/heroui/components/accordion/index.ts +0 -17
  22. package/lib/__templates__/expo/client/heroui/components/alert/alert.constants.ts +0 -13
  23. package/lib/__templates__/expo/client/heroui/components/alert/alert.hooks.ts +0 -28
  24. package/lib/__templates__/expo/client/heroui/components/alert/alert.md +0 -263
  25. package/lib/__templates__/expo/client/heroui/components/alert/alert.styles.ts +0 -65
  26. package/lib/__templates__/expo/client/heroui/components/alert/alert.tsx +0 -181
  27. package/lib/__templates__/expo/client/heroui/components/alert/alert.types.ts +0 -99
  28. package/lib/__templates__/expo/client/heroui/components/alert/alert.utils.tsx +0 -25
  29. package/lib/__templates__/expo/client/heroui/components/alert/default-icon.tsx +0 -28
  30. package/lib/__templates__/expo/client/heroui/components/alert/index.ts +0 -15
  31. package/lib/__templates__/expo/client/heroui/components/alert/success-icon.tsx +0 -28
  32. package/lib/__templates__/expo/client/heroui/components/alert/warning-icon.tsx +0 -28
  33. package/lib/__templates__/expo/client/heroui/components/avatar/avatar.animation.ts +0 -123
  34. package/lib/__templates__/expo/client/heroui/components/avatar/avatar.constants.ts +0 -19
  35. package/lib/__templates__/expo/client/heroui/components/avatar/avatar.context.ts +0 -11
  36. package/lib/__templates__/expo/client/heroui/components/avatar/avatar.md +0 -386
  37. package/lib/__templates__/expo/client/heroui/components/avatar/avatar.styles.ts +0 -145
  38. package/lib/__templates__/expo/client/heroui/components/avatar/avatar.tsx +0 -307
  39. package/lib/__templates__/expo/client/heroui/components/avatar/avatar.types.ts +0 -239
  40. package/lib/__templates__/expo/client/heroui/components/avatar/index.ts +0 -13
  41. package/lib/__templates__/expo/client/heroui/components/avatar/person-icon.tsx +0 -23
  42. package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.animation.ts +0 -42
  43. package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.constants.ts +0 -13
  44. package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.md +0 -349
  45. package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.styles.ts +0 -66
  46. package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.tsx +0 -351
  47. package/lib/__templates__/expo/client/heroui/components/bottom-sheet/bottom-sheet.types.ts +0 -150
  48. package/lib/__templates__/expo/client/heroui/components/bottom-sheet/index.ts +0 -16
  49. package/lib/__templates__/expo/client/heroui/components/button/button.constants.ts +0 -7
  50. package/lib/__templates__/expo/client/heroui/components/button/button.md +0 -381
  51. package/lib/__templates__/expo/client/heroui/components/button/button.styles.ts +0 -89
  52. package/lib/__templates__/expo/client/heroui/components/button/button.tsx +0 -284
  53. package/lib/__templates__/expo/client/heroui/components/button/button.types.ts +0 -175
  54. package/lib/__templates__/expo/client/heroui/components/button/button.utils.ts +0 -34
  55. package/lib/__templates__/expo/client/heroui/components/button/index.ts +0 -9
  56. package/lib/__templates__/expo/client/heroui/components/card/card.constants.ts +0 -11
  57. package/lib/__templates__/expo/client/heroui/components/card/card.md +0 -186
  58. package/lib/__templates__/expo/client/heroui/components/card/card.styles.ts +0 -35
  59. package/lib/__templates__/expo/client/heroui/components/card/card.tsx +0 -153
  60. package/lib/__templates__/expo/client/heroui/components/card/card.types.ts +0 -77
  61. package/lib/__templates__/expo/client/heroui/components/card/index.ts +0 -10
  62. package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.animation.ts +0 -202
  63. package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.constants.ts +0 -6
  64. package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.md +0 -311
  65. package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.styles.ts +0 -105
  66. package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.tsx +0 -251
  67. package/lib/__templates__/expo/client/heroui/components/checkbox/checkbox.types.ts +0 -216
  68. package/lib/__templates__/expo/client/heroui/components/checkbox/index.ts +0 -3
  69. package/lib/__templates__/expo/client/heroui/components/chip/chip.animation.ts +0 -18
  70. package/lib/__templates__/expo/client/heroui/components/chip/chip.constants.ts +0 -7
  71. package/lib/__templates__/expo/client/heroui/components/chip/chip.md +0 -190
  72. package/lib/__templates__/expo/client/heroui/components/chip/chip.styles.ts +0 -234
  73. package/lib/__templates__/expo/client/heroui/components/chip/chip.tsx +0 -125
  74. package/lib/__templates__/expo/client/heroui/components/chip/chip.types.ts +0 -69
  75. package/lib/__templates__/expo/client/heroui/components/chip/index.ts +0 -3
  76. package/lib/__templates__/expo/client/heroui/components/close-button/close-button.constants.ts +0 -6
  77. package/lib/__templates__/expo/client/heroui/components/close-button/close-button.md +0 -109
  78. package/lib/__templates__/expo/client/heroui/components/close-button/close-button.styles.ts +0 -13
  79. package/lib/__templates__/expo/client/heroui/components/close-button/close-button.tsx +0 -57
  80. package/lib/__templates__/expo/client/heroui/components/close-button/close-button.types.ts +0 -30
  81. package/lib/__templates__/expo/client/heroui/components/close-button/index.ts +0 -6
  82. package/lib/__templates__/expo/client/heroui/components/control-field/control-field.animation.ts +0 -18
  83. package/lib/__templates__/expo/client/heroui/components/control-field/control-field.constants.ts +0 -7
  84. package/lib/__templates__/expo/client/heroui/components/control-field/control-field.context.ts +0 -14
  85. package/lib/__templates__/expo/client/heroui/components/control-field/control-field.md +0 -241
  86. package/lib/__templates__/expo/client/heroui/components/control-field/control-field.styles.ts +0 -15
  87. package/lib/__templates__/expo/client/heroui/components/control-field/control-field.tsx +0 -245
  88. package/lib/__templates__/expo/client/heroui/components/control-field/control-field.types.ts +0 -67
  89. package/lib/__templates__/expo/client/heroui/components/control-field/index.ts +0 -6
  90. package/lib/__templates__/expo/client/heroui/components/description/description.animation.ts +0 -53
  91. package/lib/__templates__/expo/client/heroui/components/description/description.constants.ts +0 -30
  92. package/lib/__templates__/expo/client/heroui/components/description/description.md +0 -129
  93. package/lib/__templates__/expo/client/heroui/components/description/description.styles.ts +0 -25
  94. package/lib/__templates__/expo/client/heroui/components/description/description.tsx +0 -81
  95. package/lib/__templates__/expo/client/heroui/components/description/description.types.ts +0 -77
  96. package/lib/__templates__/expo/client/heroui/components/description/index.ts +0 -3
  97. package/lib/__templates__/expo/client/heroui/components/dialog/dialog.animation.ts +0 -9
  98. package/lib/__templates__/expo/client/heroui/components/dialog/dialog.constants.ts +0 -13
  99. package/lib/__templates__/expo/client/heroui/components/dialog/dialog.md +0 -288
  100. package/lib/__templates__/expo/client/heroui/components/dialog/dialog.styles.ts +0 -77
  101. package/lib/__templates__/expo/client/heroui/components/dialog/dialog.tsx +0 -379
  102. package/lib/__templates__/expo/client/heroui/components/dialog/dialog.types.ts +0 -199
  103. package/lib/__templates__/expo/client/heroui/components/dialog/index.ts +0 -12
  104. package/lib/__templates__/expo/client/heroui/components/field-error/field-error.animation.ts +0 -50
  105. package/lib/__templates__/expo/client/heroui/components/field-error/field-error.constants.ts +0 -31
  106. package/lib/__templates__/expo/client/heroui/components/field-error/field-error.md +0 -204
  107. package/lib/__templates__/expo/client/heroui/components/field-error/field-error.styles.ts +0 -23
  108. package/lib/__templates__/expo/client/heroui/components/field-error/field-error.tsx +0 -91
  109. package/lib/__templates__/expo/client/heroui/components/field-error/field-error.types.ts +0 -79
  110. package/lib/__templates__/expo/client/heroui/components/field-error/index.ts +0 -3
  111. package/lib/__templates__/expo/client/heroui/components/input/index.ts +0 -3
  112. package/lib/__templates__/expo/client/heroui/components/input/input.constants.ts +0 -6
  113. package/lib/__templates__/expo/client/heroui/components/input/input.md +0 -193
  114. package/lib/__templates__/expo/client/heroui/components/input/input.styles.ts +0 -51
  115. package/lib/__templates__/expo/client/heroui/components/input/input.tsx +0 -96
  116. package/lib/__templates__/expo/client/heroui/components/input/input.types.ts +0 -44
  117. package/lib/__templates__/expo/client/heroui/components/input-group/index.ts +0 -9
  118. package/lib/__templates__/expo/client/heroui/components/input-group/input-group.animation.ts +0 -14
  119. package/lib/__templates__/expo/client/heroui/components/input-group/input-group.constants.ts +0 -6
  120. package/lib/__templates__/expo/client/heroui/components/input-group/input-group.md +0 -197
  121. package/lib/__templates__/expo/client/heroui/components/input-group/input-group.styles.ts +0 -31
  122. package/lib/__templates__/expo/client/heroui/components/input-group/input-group.tsx +0 -239
  123. package/lib/__templates__/expo/client/heroui/components/input-group/input-group.types.ts +0 -98
  124. package/lib/__templates__/expo/client/heroui/components/input-otp/index.ts +0 -9
  125. package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.animation.ts +0 -199
  126. package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.constants.ts +0 -12
  127. package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.md +0 -376
  128. package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.styles.ts +0 -68
  129. package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.tsx +0 -414
  130. package/lib/__templates__/expo/client/heroui/components/input-otp/input-otp.types.ts +0 -275
  131. package/lib/__templates__/expo/client/heroui/components/label/index.ts +0 -3
  132. package/lib/__templates__/expo/client/heroui/components/label/label.animation.ts +0 -18
  133. package/lib/__templates__/expo/client/heroui/components/label/label.constants.ts +0 -7
  134. package/lib/__templates__/expo/client/heroui/components/label/label.md +0 -187
  135. package/lib/__templates__/expo/client/heroui/components/label/label.styles.ts +0 -44
  136. package/lib/__templates__/expo/client/heroui/components/label/label.tsx +0 -172
  137. package/lib/__templates__/expo/client/heroui/components/label/label.types.ts +0 -86
  138. package/lib/__templates__/expo/client/heroui/components/list-group/index.ts +0 -17
  139. package/lib/__templates__/expo/client/heroui/components/list-group/list-group.constants.ts +0 -17
  140. package/lib/__templates__/expo/client/heroui/components/list-group/list-group.md +0 -387
  141. package/lib/__templates__/expo/client/heroui/components/list-group/list-group.styles.ts +0 -40
  142. package/lib/__templates__/expo/client/heroui/components/list-group/list-group.tsx +0 -206
  143. package/lib/__templates__/expo/client/heroui/components/list-group/list-group.types.ts +0 -132
  144. package/lib/__templates__/expo/client/heroui/components/menu/index.ts +0 -38
  145. package/lib/__templates__/expo/client/heroui/components/menu/menu.animation.ts +0 -121
  146. package/lib/__templates__/expo/client/heroui/components/menu/menu.constants.ts +0 -37
  147. package/lib/__templates__/expo/client/heroui/components/menu/menu.md +0 -620
  148. package/lib/__templates__/expo/client/heroui/components/menu/menu.styles.ts +0 -107
  149. package/lib/__templates__/expo/client/heroui/components/menu/menu.tsx +0 -664
  150. package/lib/__templates__/expo/client/heroui/components/menu/menu.types.ts +0 -394
  151. package/lib/__templates__/expo/client/heroui/components/popover/arrow-svg.tsx +0 -180
  152. package/lib/__templates__/expo/client/heroui/components/popover/index.ts +0 -18
  153. package/lib/__templates__/expo/client/heroui/components/popover/popover.animation.ts +0 -9
  154. package/lib/__templates__/expo/client/heroui/components/popover/popover.constants.ts +0 -34
  155. package/lib/__templates__/expo/client/heroui/components/popover/popover.md +0 -508
  156. package/lib/__templates__/expo/client/heroui/components/popover/popover.styles.ts +0 -98
  157. package/lib/__templates__/expo/client/heroui/components/popover/popover.tsx +0 -624
  158. package/lib/__templates__/expo/client/heroui/components/popover/popover.types.ts +0 -290
  159. package/lib/__templates__/expo/client/heroui/components/pressable-feedback/index.ts +0 -3
  160. package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.animation.ts +0 -450
  161. package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.constants.ts +0 -12
  162. package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.md +0 -328
  163. package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.styles.ts +0 -84
  164. package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.tsx +0 -330
  165. package/lib/__templates__/expo/client/heroui/components/pressable-feedback/pressable-feedback.types.ts +0 -386
  166. package/lib/__templates__/expo/client/heroui/components/radio/index.ts +0 -9
  167. package/lib/__templates__/expo/client/heroui/components/radio/radio.animation.ts +0 -92
  168. package/lib/__templates__/expo/client/heroui/components/radio/radio.constants.ts +0 -11
  169. package/lib/__templates__/expo/client/heroui/components/radio/radio.md +0 -339
  170. package/lib/__templates__/expo/client/heroui/components/radio/radio.styles.ts +0 -80
  171. package/lib/__templates__/expo/client/heroui/components/radio/radio.tsx +0 -217
  172. package/lib/__templates__/expo/client/heroui/components/radio/radio.types.ts +0 -106
  173. package/lib/__templates__/expo/client/heroui/components/radio-group/index.ts +0 -9
  174. package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.animation.ts +0 -20
  175. package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.constants.ts +0 -7
  176. package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.context.ts +0 -14
  177. package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.md +0 -273
  178. package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.styles.ts +0 -15
  179. package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.tsx +0 -220
  180. package/lib/__templates__/expo/client/heroui/components/radio-group/radio-group.types.ts +0 -64
  181. package/lib/__templates__/expo/client/heroui/components/scroll-shadow/index.ts +0 -7
  182. package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.animation.ts +0 -132
  183. package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.constants.ts +0 -21
  184. package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.md +0 -206
  185. package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.styles.ts +0 -52
  186. package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.tsx +0 -262
  187. package/lib/__templates__/expo/client/heroui/components/scroll-shadow/scroll-shadow.types.ts +0 -121
  188. package/lib/__templates__/expo/client/heroui/components/search-field/index.ts +0 -17
  189. package/lib/__templates__/expo/client/heroui/components/search-field/search-field.animation.ts +0 -18
  190. package/lib/__templates__/expo/client/heroui/components/search-field/search-field.constants.ts +0 -10
  191. package/lib/__templates__/expo/client/heroui/components/search-field/search-field.md +0 -231
  192. package/lib/__templates__/expo/client/heroui/components/search-field/search-field.styles.ts +0 -35
  193. package/lib/__templates__/expo/client/heroui/components/search-field/search-field.tsx +0 -253
  194. package/lib/__templates__/expo/client/heroui/components/search-field/search-field.types.ts +0 -160
  195. package/lib/__templates__/expo/client/heroui/components/search-field/search-icon.tsx +0 -37
  196. package/lib/__templates__/expo/client/heroui/components/select/index.ts +0 -28
  197. package/lib/__templates__/expo/client/heroui/components/select/select.animation.ts +0 -92
  198. package/lib/__templates__/expo/client/heroui/components/select/select.constants.ts +0 -53
  199. package/lib/__templates__/expo/client/heroui/components/select/select.md +0 -796
  200. package/lib/__templates__/expo/client/heroui/components/select/select.styles.ts +0 -149
  201. package/lib/__templates__/expo/client/heroui/components/select/select.tsx +0 -828
  202. package/lib/__templates__/expo/client/heroui/components/select/select.types.ts +0 -438
  203. package/lib/__templates__/expo/client/heroui/components/separator/index.ts +0 -7
  204. package/lib/__templates__/expo/client/heroui/components/separator/separator.constants.ts +0 -6
  205. package/lib/__templates__/expo/client/heroui/components/separator/separator.md +0 -106
  206. package/lib/__templates__/expo/client/heroui/components/separator/separator.styles.ts +0 -50
  207. package/lib/__templates__/expo/client/heroui/components/separator/separator.tsx +0 -62
  208. package/lib/__templates__/expo/client/heroui/components/separator/separator.types.ts +0 -40
  209. package/lib/__templates__/expo/client/heroui/components/skeleton/index.ts +0 -7
  210. package/lib/__templates__/expo/client/heroui/components/skeleton/linear-gradient.tsx +0 -45
  211. package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.animation.ts +0 -351
  212. package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.constants.ts +0 -39
  213. package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.md +0 -208
  214. package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.styles.ts +0 -49
  215. package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.tsx +0 -183
  216. package/lib/__templates__/expo/client/heroui/components/skeleton/skeleton.types.ts +0 -191
  217. package/lib/__templates__/expo/client/heroui/components/skeleton-group/index.ts +0 -7
  218. package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.constants.ts +0 -7
  219. package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.md +0 -247
  220. package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.styles.ts +0 -10
  221. package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.tsx +0 -94
  222. package/lib/__templates__/expo/client/heroui/components/skeleton-group/skeleton-group.types.ts +0 -28
  223. package/lib/__templates__/expo/client/heroui/components/slider/index.ts +0 -23
  224. package/lib/__templates__/expo/client/heroui/components/slider/slider.animation.ts +0 -87
  225. package/lib/__templates__/expo/client/heroui/components/slider/slider.constants.ts +0 -24
  226. package/lib/__templates__/expo/client/heroui/components/slider/slider.md +0 -348
  227. package/lib/__templates__/expo/client/heroui/components/slider/slider.styles.ts +0 -85
  228. package/lib/__templates__/expo/client/heroui/components/slider/slider.tsx +0 -413
  229. package/lib/__templates__/expo/client/heroui/components/slider/slider.types.ts +0 -120
  230. package/lib/__templates__/expo/client/heroui/components/spinner/index.ts +0 -10
  231. package/lib/__templates__/expo/client/heroui/components/spinner/spinner-icon.tsx +0 -49
  232. package/lib/__templates__/expo/client/heroui/components/spinner/spinner.animation.ts +0 -150
  233. package/lib/__templates__/expo/client/heroui/components/spinner/spinner.constants.ts +0 -36
  234. package/lib/__templates__/expo/client/heroui/components/spinner/spinner.md +0 -199
  235. package/lib/__templates__/expo/client/heroui/components/spinner/spinner.styles.ts +0 -44
  236. package/lib/__templates__/expo/client/heroui/components/spinner/spinner.tsx +0 -198
  237. package/lib/__templates__/expo/client/heroui/components/spinner/spinner.types.ts +0 -158
  238. package/lib/__templates__/expo/client/heroui/components/surface/index.ts +0 -3
  239. package/lib/__templates__/expo/client/heroui/components/surface/surface.animation.ts +0 -18
  240. package/lib/__templates__/expo/client/heroui/components/surface/surface.constants.ts +0 -6
  241. package/lib/__templates__/expo/client/heroui/components/surface/surface.md +0 -136
  242. package/lib/__templates__/expo/client/heroui/components/surface/surface.styles.ts +0 -28
  243. package/lib/__templates__/expo/client/heroui/components/surface/surface.tsx +0 -66
  244. package/lib/__templates__/expo/client/heroui/components/surface/surface.types.ts +0 -46
  245. package/lib/__templates__/expo/client/heroui/components/switch/index.ts +0 -3
  246. package/lib/__templates__/expo/client/heroui/components/switch/switch.animation.ts +0 -243
  247. package/lib/__templates__/expo/client/heroui/components/switch/switch.constants.ts +0 -26
  248. package/lib/__templates__/expo/client/heroui/components/switch/switch.md +0 -334
  249. package/lib/__templates__/expo/client/heroui/components/switch/switch.styles.ts +0 -83
  250. package/lib/__templates__/expo/client/heroui/components/switch/switch.tsx +0 -280
  251. package/lib/__templates__/expo/client/heroui/components/switch/switch.types.ts +0 -208
  252. package/lib/__templates__/expo/client/heroui/components/tabs/index.ts +0 -8
  253. package/lib/__templates__/expo/client/heroui/components/tabs/tabs.animation.ts +0 -246
  254. package/lib/__templates__/expo/client/heroui/components/tabs/tabs.constants.ts +0 -17
  255. package/lib/__templates__/expo/client/heroui/components/tabs/tabs.context.ts +0 -28
  256. package/lib/__templates__/expo/client/heroui/components/tabs/tabs.md +0 -565
  257. package/lib/__templates__/expo/client/heroui/components/tabs/tabs.styles.ts +0 -168
  258. package/lib/__templates__/expo/client/heroui/components/tabs/tabs.tsx +0 -445
  259. package/lib/__templates__/expo/client/heroui/components/tabs/tabs.types.ts +0 -341
  260. package/lib/__templates__/expo/client/heroui/components/tag-group/index.ts +0 -15
  261. package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.animation.ts +0 -17
  262. package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.constants.ts +0 -10
  263. package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.md +0 -404
  264. package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.styles.ts +0 -74
  265. package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.tsx +0 -325
  266. package/lib/__templates__/expo/client/heroui/components/tag-group/tag-group.types.ts +0 -125
  267. package/lib/__templates__/expo/client/heroui/components/text-area/index.ts +0 -3
  268. package/lib/__templates__/expo/client/heroui/components/text-area/text-area.constants.ts +0 -6
  269. package/lib/__templates__/expo/client/heroui/components/text-area/text-area.md +0 -133
  270. package/lib/__templates__/expo/client/heroui/components/text-area/text-area.styles.ts +0 -10
  271. package/lib/__templates__/expo/client/heroui/components/text-area/text-area.tsx +0 -44
  272. package/lib/__templates__/expo/client/heroui/components/text-area/text-area.types.ts +0 -6
  273. package/lib/__templates__/expo/client/heroui/components/text-field/index.ts +0 -3
  274. package/lib/__templates__/expo/client/heroui/components/text-field/text-field.animation.ts +0 -20
  275. package/lib/__templates__/expo/client/heroui/components/text-field/text-field.constants.ts +0 -6
  276. package/lib/__templates__/expo/client/heroui/components/text-field/text-field.md +0 -256
  277. package/lib/__templates__/expo/client/heroui/components/text-field/text-field.styles.ts +0 -10
  278. package/lib/__templates__/expo/client/heroui/components/text-field/text-field.tsx +0 -82
  279. package/lib/__templates__/expo/client/heroui/components/text-field/text-field.types.ts +0 -56
  280. package/lib/__templates__/expo/client/heroui/components/toast/index.ts +0 -4
  281. package/lib/__templates__/expo/client/heroui/components/toast/toast.animation.ts +0 -381
  282. package/lib/__templates__/expo/client/heroui/components/toast/toast.constants.ts +0 -10
  283. package/lib/__templates__/expo/client/heroui/components/toast/toast.hooks.ts +0 -73
  284. package/lib/__templates__/expo/client/heroui/components/toast/toast.md +0 -420
  285. package/lib/__templates__/expo/client/heroui/components/toast/toast.styles.ts +0 -89
  286. package/lib/__templates__/expo/client/heroui/components/toast/toast.tsx +0 -472
  287. package/lib/__templates__/expo/client/heroui/components/toast/toast.types.ts +0 -320
  288. package/lib/__templates__/expo/client/heroui/docs.md +0 -47
  289. package/lib/__templates__/expo/client/heroui/helpers/external/hooks/index.ts +0 -3
  290. package/lib/__templates__/expo/client/heroui/helpers/external/hooks/use-is-on-surface.ts +0 -8
  291. package/lib/__templates__/expo/client/heroui/helpers/external/hooks/use-theme-color.ts +0 -137
  292. package/lib/__templates__/expo/client/heroui/helpers/external/utils/cn.ts +0 -12
  293. package/lib/__templates__/expo/client/heroui/helpers/external/utils/color-kit/index.ts +0 -2395
  294. package/lib/__templates__/expo/client/heroui/helpers/external/utils/color-kit/types.ts +0 -212
  295. package/lib/__templates__/expo/client/heroui/helpers/external/utils/index.ts +0 -2
  296. package/lib/__templates__/expo/client/heroui/helpers/internal/components/animated-check-icon.tsx +0 -78
  297. package/lib/__templates__/expo/client/heroui/helpers/internal/components/bottom-sheet-content-container.tsx +0 -97
  298. package/lib/__templates__/expo/client/heroui/helpers/internal/components/bottom-sheet-content.tsx +0 -158
  299. package/lib/__templates__/expo/client/heroui/helpers/internal/components/check-icon.tsx +0 -28
  300. package/lib/__templates__/expo/client/heroui/helpers/internal/components/chevron-down-icon.tsx +0 -28
  301. package/lib/__templates__/expo/client/heroui/helpers/internal/components/chevron-right-icon.tsx +0 -29
  302. package/lib/__templates__/expo/client/heroui/helpers/internal/components/close-icon.tsx +0 -29
  303. package/lib/__templates__/expo/client/heroui/helpers/internal/components/full-window-overlay.tsx +0 -48
  304. package/lib/__templates__/expo/client/heroui/helpers/internal/components/hero-text.tsx +0 -71
  305. package/lib/__templates__/expo/client/heroui/helpers/internal/components/index.ts +0 -9
  306. package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/animation-settings-context.ts +0 -19
  307. package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/bottom-sheet-is-dragging-context.ts +0 -11
  308. package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/form-field-context.ts +0 -36
  309. package/lib/__templates__/expo/client/heroui/helpers/internal/contexts/index.ts +0 -3
  310. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/index.ts +0 -14
  311. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-augmented-ref.ts +0 -32
  312. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-bottom-sheet-aware-handlers.ts +0 -94
  313. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-bottom-sheet-gesture-handlers.ts +0 -52
  314. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-combined-animation-disabled-state.ts +0 -49
  315. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-controllable-state.ts +0 -124
  316. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-dev-info.ts +0 -38
  317. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-keyboard-status.ts +0 -22
  318. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-bottom-sheet-content-animation.ts +0 -67
  319. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-dialog-content-animation.ts +0 -296
  320. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-overlay-animation.ts +0 -91
  321. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-popover-content-animation.ts +0 -199
  322. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-popup-root-animation.ts +0 -26
  323. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-relative-position.ts +0 -353
  324. package/lib/__templates__/expo/client/heroui/helpers/internal/hooks/use-resolved-style-property.ts +0 -118
  325. package/lib/__templates__/expo/client/heroui/helpers/internal/types/animation.ts +0 -131
  326. package/lib/__templates__/expo/client/heroui/helpers/internal/types/bottom-sheet.ts +0 -99
  327. package/lib/__templates__/expo/client/heroui/helpers/internal/types/index.ts +0 -5
  328. package/lib/__templates__/expo/client/heroui/helpers/internal/types/misc.ts +0 -10
  329. package/lib/__templates__/expo/client/heroui/helpers/internal/types/primitives.ts +0 -146
  330. package/lib/__templates__/expo/client/heroui/helpers/internal/types/theme.ts +0 -18
  331. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/animation.ts +0 -266
  332. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/children-to-string.ts +0 -117
  333. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/combine-styles.ts +0 -17
  334. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/create-context.ts +0 -60
  335. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/ease-gradient/create-interpolation.ts +0 -35
  336. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/ease-gradient/index.ts +0 -97
  337. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/get-element-by-display-name.ts +0 -15
  338. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/get-element-with-default.ts +0 -17
  339. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/has-prop.ts +0 -18
  340. package/lib/__templates__/expo/client/heroui/helpers/internal/utils/index.ts +0 -8
  341. package/lib/__templates__/expo/client/heroui/index.tsx +0 -51
  342. package/lib/__templates__/expo/client/heroui/primitives/README.md +0 -27
  343. package/lib/__templates__/expo/client/heroui/primitives/accordion/accordion.tsx +0 -270
  344. package/lib/__templates__/expo/client/heroui/primitives/accordion/accordion.types.ts +0 -117
  345. package/lib/__templates__/expo/client/heroui/primitives/accordion/accordion.utils.ts +0 -12
  346. package/lib/__templates__/expo/client/heroui/primitives/accordion/index.ts +0 -2
  347. package/lib/__templates__/expo/client/heroui/primitives/activity-indicator/activity-indicator.tsx +0 -50
  348. package/lib/__templates__/expo/client/heroui/primitives/activity-indicator/activity-indicator.types.ts +0 -24
  349. package/lib/__templates__/expo/client/heroui/primitives/activity-indicator/index.ts +0 -2
  350. package/lib/__templates__/expo/client/heroui/primitives/alert/alert.tsx +0 -124
  351. package/lib/__templates__/expo/client/heroui/primitives/alert/alert.types.ts +0 -87
  352. package/lib/__templates__/expo/client/heroui/primitives/alert/index.ts +0 -2
  353. package/lib/__templates__/expo/client/heroui/primitives/avatar/avatar.tsx +0 -171
  354. package/lib/__templates__/expo/client/heroui/primitives/avatar/avatar.types.ts +0 -62
  355. package/lib/__templates__/expo/client/heroui/primitives/avatar/avatar.utils.ts +0 -102
  356. package/lib/__templates__/expo/client/heroui/primitives/avatar/index.ts +0 -2
  357. package/lib/__templates__/expo/client/heroui/primitives/bottom-sheet/bottom-sheet.tsx +0 -235
  358. package/lib/__templates__/expo/client/heroui/primitives/bottom-sheet/bottom-sheet.types.ts +0 -127
  359. package/lib/__templates__/expo/client/heroui/primitives/bottom-sheet/index.ts +0 -2
  360. package/lib/__templates__/expo/client/heroui/primitives/checkbox/checkbox.tsx +0 -119
  361. package/lib/__templates__/expo/client/heroui/primitives/checkbox/checkbox.types.ts +0 -37
  362. package/lib/__templates__/expo/client/heroui/primitives/checkbox/index.ts +0 -2
  363. package/lib/__templates__/expo/client/heroui/primitives/dialog/dialog.tsx +0 -274
  364. package/lib/__templates__/expo/client/heroui/primitives/dialog/dialog.types.ts +0 -129
  365. package/lib/__templates__/expo/client/heroui/primitives/dialog/index.ts +0 -2
  366. package/lib/__templates__/expo/client/heroui/primitives/input-otp/index.ts +0 -3
  367. package/lib/__templates__/expo/client/heroui/primitives/input-otp/input-otp.tsx +0 -431
  368. package/lib/__templates__/expo/client/heroui/primitives/input-otp/input-otp.types.ts +0 -169
  369. package/lib/__templates__/expo/client/heroui/primitives/input-otp/input-otp.utils.ts +0 -31
  370. package/lib/__templates__/expo/client/heroui/primitives/label/index.ts +0 -2
  371. package/lib/__templates__/expo/client/heroui/primitives/label/label.tsx +0 -24
  372. package/lib/__templates__/expo/client/heroui/primitives/label/label.types.ts +0 -39
  373. package/lib/__templates__/expo/client/heroui/primitives/menu/index.ts +0 -2
  374. package/lib/__templates__/expo/client/heroui/primitives/menu/menu.tsx +0 -765
  375. package/lib/__templates__/expo/client/heroui/primitives/menu/menu.types.ts +0 -401
  376. package/lib/__templates__/expo/client/heroui/primitives/popover/index.ts +0 -2
  377. package/lib/__templates__/expo/client/heroui/primitives/popover/popover.tsx +0 -382
  378. package/lib/__templates__/expo/client/heroui/primitives/popover/popover.types.ts +0 -201
  379. package/lib/__templates__/expo/client/heroui/primitives/portal/index.ts +0 -1
  380. package/lib/__templates__/expo/client/heroui/primitives/portal/portal.tsx +0 -126
  381. package/lib/__templates__/expo/client/heroui/primitives/radio/index.ts +0 -2
  382. package/lib/__templates__/expo/client/heroui/primitives/radio/radio.tsx +0 -133
  383. package/lib/__templates__/expo/client/heroui/primitives/radio/radio.types.ts +0 -47
  384. package/lib/__templates__/expo/client/heroui/primitives/radio-group/index.ts +0 -2
  385. package/lib/__templates__/expo/client/heroui/primitives/radio-group/radio-group.tsx +0 -114
  386. package/lib/__templates__/expo/client/heroui/primitives/radio-group/radio-group.types.ts +0 -65
  387. package/lib/__templates__/expo/client/heroui/primitives/select/index.ts +0 -2
  388. package/lib/__templates__/expo/client/heroui/primitives/select/select.tsx +0 -705
  389. package/lib/__templates__/expo/client/heroui/primitives/select/select.types.ts +0 -409
  390. package/lib/__templates__/expo/client/heroui/primitives/select/select.utils.ts +0 -35
  391. package/lib/__templates__/expo/client/heroui/primitives/slider/index.ts +0 -3
  392. package/lib/__templates__/expo/client/heroui/primitives/slider/slider.tsx +0 -464
  393. package/lib/__templates__/expo/client/heroui/primitives/slider/slider.types.ts +0 -208
  394. package/lib/__templates__/expo/client/heroui/primitives/slider/slider.utils.ts +0 -93
  395. package/lib/__templates__/expo/client/heroui/primitives/slot/index.ts +0 -1
  396. package/lib/__templates__/expo/client/heroui/primitives/slot/slot.tsx +0 -122
  397. package/lib/__templates__/expo/client/heroui/primitives/slot/types.ts +0 -19
  398. package/lib/__templates__/expo/client/heroui/primitives/slot/utils.ts +0 -96
  399. package/lib/__templates__/expo/client/heroui/primitives/switch/index.ts +0 -2
  400. package/lib/__templates__/expo/client/heroui/primitives/switch/switch.tsx +0 -61
  401. package/lib/__templates__/expo/client/heroui/primitives/switch/switch.types.ts +0 -55
  402. package/lib/__templates__/expo/client/heroui/primitives/tabs/index.ts +0 -2
  403. package/lib/__templates__/expo/client/heroui/primitives/tabs/tabs.tsx +0 -202
  404. package/lib/__templates__/expo/client/heroui/primitives/tabs/tabs.types.ts +0 -77
  405. package/lib/__templates__/expo/client/heroui/primitives/tag-group/index.ts +0 -2
  406. package/lib/__templates__/expo/client/heroui/primitives/tag-group/tag-group.tsx +0 -324
  407. package/lib/__templates__/expo/client/heroui/primitives/tag-group/tag-group.types.ts +0 -119
  408. package/lib/__templates__/expo/client/heroui/primitives/toast/index.ts +0 -2
  409. package/lib/__templates__/expo/client/heroui/primitives/toast/toast.tsx +0 -138
  410. package/lib/__templates__/expo/client/heroui/primitives/toast/toast.types.ts +0 -86
  411. package/lib/__templates__/expo/client/heroui/providers/animation-settings/index.ts +0 -8
  412. package/lib/__templates__/expo/client/heroui/providers/animation-settings/provider.tsx +0 -47
  413. package/lib/__templates__/expo/client/heroui/providers/animation-settings/types.ts +0 -27
  414. package/lib/__templates__/expo/client/heroui/providers/hero-ui-native/index.ts +0 -2
  415. package/lib/__templates__/expo/client/heroui/providers/hero-ui-native/provider.tsx +0 -67
  416. package/lib/__templates__/expo/client/heroui/providers/hero-ui-native/types.ts +0 -114
  417. package/lib/__templates__/expo/client/heroui/providers/hero-ui-native-raw/index.ts +0 -2
  418. package/lib/__templates__/expo/client/heroui/providers/hero-ui-native-raw/provider.tsx +0 -50
  419. package/lib/__templates__/expo/client/heroui/providers/hero-ui-native-raw/types.ts +0 -39
  420. package/lib/__templates__/expo/client/heroui/providers/text-component/index.ts +0 -2
  421. package/lib/__templates__/expo/client/heroui/providers/text-component/provider.tsx +0 -9
  422. package/lib/__templates__/expo/client/heroui/providers/text-component/types.ts +0 -52
  423. package/lib/__templates__/expo/client/heroui/providers/toast/index.ts +0 -3
  424. package/lib/__templates__/expo/client/heroui/providers/toast/insets-container.tsx +0 -87
  425. package/lib/__templates__/expo/client/heroui/providers/toast/provider.tsx +0 -431
  426. package/lib/__templates__/expo/client/heroui/providers/toast/reducer.ts +0 -34
  427. package/lib/__templates__/expo/client/heroui/providers/toast/toast-config.context.ts +0 -27
  428. package/lib/__templates__/expo/client/heroui/providers/toast/toast-item-renderer.tsx +0 -45
  429. package/lib/__templates__/expo/client/heroui/providers/toast/types.ts +0 -373
  430. package/lib/__templates__/expo/client/heroui/styles/index.css +0 -3
  431. package/lib/__templates__/expo/client/heroui/styles/theme.css +0 -112
  432. package/lib/__templates__/expo/client/heroui/styles/utilities.css +0 -8
  433. package/lib/__templates__/expo/client/heroui/styles/variables.css +0 -146
@@ -1,183 +0,0 @@
1
- import React, {
2
- useCallback,
3
- useMemo,
4
- useState,
5
- type PropsWithChildren,
6
- } from 'react';
7
- import {
8
- StyleSheet,
9
- useWindowDimensions,
10
- type LayoutChangeEvent,
11
- } from 'react-native';
12
- import Animated, { useSharedValue } from 'react-native-reanimated';
13
-
14
- import { AnimationSettingsProvider } from '../../helpers/internal/contexts';
15
-
16
- import LinearGradientComponent from './linear-gradient';
17
- import {
18
- SkeletonAnimationProvider,
19
- useSkeletonAnimation,
20
- useSkeletonPulseAnimation,
21
- useSkeletonRootAnimation,
22
- useSkeletonShimmerAnimation,
23
- } from './skeleton.animation';
24
- import { DISPLAY_NAME } from './skeleton.constants';
25
- import { skeletonClassNames, skeletonStyleSheet } from './skeleton.styles';
26
- import type { SkeletonProps } from './skeleton.types';
27
-
28
- // --------------------------------------------------
29
-
30
- const ShimmerAnimation: React.FC<{
31
- animation: SkeletonProps['animation'];
32
- isAnimatedStyleActive?: boolean;
33
- }> = ({ animation, isAnimatedStyleActive = true }) => {
34
- const { rContainerStyle, gradientColors } = useSkeletonShimmerAnimation({
35
- animation,
36
- });
37
-
38
- const shimmerStyle = isAnimatedStyleActive
39
- ? [StyleSheet.absoluteFill, skeletonStyleSheet.borderCurve, rContainerStyle]
40
- : [StyleSheet.absoluteFill, skeletonStyleSheet.borderCurve];
41
-
42
- return (
43
- <Animated.View style={shimmerStyle}>
44
- <LinearGradientComponent colors={gradientColors} />
45
- </Animated.View>
46
- );
47
- };
48
-
49
- // --------------------------------------------------
50
-
51
- const PulseAnimation: React.FC<
52
- PropsWithChildren<{
53
- animation: SkeletonProps['animation'];
54
- isAnimatedStyleActive?: boolean;
55
- }>
56
- > = ({ children, animation, isAnimatedStyleActive = true }) => {
57
- const { variant } = useSkeletonAnimation();
58
-
59
- const { rContainerStyle } = useSkeletonPulseAnimation({
60
- animation,
61
- });
62
-
63
- if (variant === 'pulse') {
64
- const pulseStyle = isAnimatedStyleActive ? rContainerStyle : undefined;
65
- return <Animated.View style={pulseStyle}>{children}</Animated.View>;
66
- }
67
-
68
- return children;
69
- };
70
-
71
- // --------------------------------------------------
72
-
73
- const Skeleton: React.FC<SkeletonProps> = (props) => {
74
- const {
75
- children,
76
- isLoading = true,
77
- variant = 'shimmer',
78
- animation,
79
- isAnimatedStyleActive = true,
80
- className,
81
- style,
82
- ...restProps
83
- } = props;
84
-
85
- const [componentWidth, setComponentWidth] = useState(0);
86
- const [offset, setOffset] = useState(0);
87
-
88
- const progress = useSharedValue(0);
89
-
90
- const { width: screenWidth } = useWindowDimensions();
91
-
92
- const { isAllAnimationsDisabled, entering, exiting } =
93
- useSkeletonRootAnimation({
94
- animation,
95
- isLoading,
96
- variant,
97
- progress,
98
- });
99
-
100
- const rootClassName = skeletonClassNames.root({ className });
101
-
102
- const handleLayout = useCallback(
103
- (event: LayoutChangeEvent) => {
104
- if (componentWidth === 0) {
105
- const { width, x } = event.nativeEvent.layout;
106
- setComponentWidth(width);
107
- setOffset(x);
108
- }
109
- },
110
- [componentWidth]
111
- );
112
-
113
- const animationContextValue = useMemo(
114
- () => ({
115
- isLoading,
116
- variant,
117
- progress,
118
- componentWidth,
119
- offset,
120
- screenWidth,
121
- }),
122
- [isLoading, variant, progress, componentWidth, offset, screenWidth]
123
- );
124
-
125
- const animationSettingsContextValue = useMemo(
126
- () => ({
127
- isAllAnimationsDisabled,
128
- }),
129
- [isAllAnimationsDisabled]
130
- );
131
-
132
- if (!isLoading) {
133
- return (
134
- <Animated.View key="content" entering={entering} exiting={exiting}>
135
- {children}
136
- </Animated.View>
137
- );
138
- }
139
-
140
- return (
141
- <AnimationSettingsProvider value={animationSettingsContextValue}>
142
- <SkeletonAnimationProvider value={animationContextValue}>
143
- <PulseAnimation
144
- animation={animation}
145
- isAnimatedStyleActive={isAnimatedStyleActive}
146
- >
147
- <Animated.View
148
- key="skeleton"
149
- entering={entering}
150
- exiting={exiting}
151
- onLayout={handleLayout}
152
- style={[skeletonStyleSheet.borderCurve, style]}
153
- className={rootClassName}
154
- {...restProps}
155
- >
156
- {variant === 'shimmer' && componentWidth > 0 && (
157
- <ShimmerAnimation
158
- animation={animation}
159
- isAnimatedStyleActive={isAnimatedStyleActive}
160
- />
161
- )}
162
- </Animated.View>
163
- </PulseAnimation>
164
- </SkeletonAnimationProvider>
165
- </AnimationSettingsProvider>
166
- );
167
- };
168
-
169
- // --------------------------------------------------
170
-
171
- Skeleton.displayName = DISPLAY_NAME.SKELETON;
172
-
173
- /**
174
- * Skeleton component for displaying loading placeholders
175
- *
176
- * @component Skeleton - Animated loading placeholder that can display shimmer or pulse effects.
177
- * Shows skeleton state when isLoading is true, otherwise displays children content.
178
- * Supports customizable animations through the animation prop with shimmer and pulse configurations.
179
- * Shape and size are controlled via className for maximum flexibility.
180
- *
181
- * @see Full documentation: https://v3.heroui.com/docs/native/components/skeleton
182
- */
183
- export default Skeleton;
@@ -1,191 +0,0 @@
1
- import type { ViewProps } from 'react-native';
2
- import type {
3
- AnimatedProps,
4
- EasingFunction,
5
- EntryOrExitLayoutType,
6
- SharedValue,
7
- } from 'react-native-reanimated';
8
- import type { Animation, AnimationRoot } from '../../helpers/internal/types';
9
-
10
- /**
11
- * Skeleton animation type - defines the animation style
12
- */
13
- export type SkeletonAnimation = 'shimmer' | 'pulse' | 'none';
14
-
15
- /**
16
- * Shimmer animation configuration for Skeleton root component
17
- */
18
- export type SkeletonShimmerAnimation = Animation<{
19
- /**
20
- * Animation duration in milliseconds
21
- * @default 1500
22
- */
23
- duration?: number;
24
- /**
25
- * Speed multiplier for the animation
26
- * @default 1
27
- */
28
- speed?: number;
29
- /**
30
- * Highlight color for the shimmer effect
31
- */
32
- highlightColor?: string;
33
- /**
34
- * Easing function for the animation
35
- */
36
- easing?: EasingFunction;
37
- }>;
38
-
39
- /**
40
- * Pulse animation configuration for Skeleton root component
41
- */
42
- export type SkeletonPulseAnimation = Animation<{
43
- /**
44
- * Animation duration in milliseconds
45
- * @default 1000
46
- */
47
- duration?: number;
48
- /**
49
- * Minimum opacity value
50
- * @default 0.5
51
- */
52
- minOpacity?: number;
53
- /**
54
- * Maximum opacity value
55
- * @default 1
56
- */
57
- maxOpacity?: number;
58
- /**
59
- * Easing function for the animation
60
- */
61
- easing?: EasingFunction;
62
- }>;
63
-
64
- /**
65
- * Animation configuration for Skeleton root component
66
- */
67
- export type SkeletonRootAnimation = AnimationRoot<{
68
- entering?: Animation<{
69
- /**
70
- * Custom entering animation for skeleton
71
- */
72
- value?: EntryOrExitLayoutType;
73
- }>;
74
- /**
75
- * Exiting animation for the skeleton
76
- */
77
- exiting?: Animation<{
78
- /**
79
- * Custom exiting animation for skeleton
80
- */
81
- value?: EntryOrExitLayoutType;
82
- }>;
83
- /**
84
- * Shimmer animation configuration
85
- */
86
- shimmer?: SkeletonShimmerAnimation;
87
- /**
88
- * Pulse animation configuration
89
- */
90
- pulse?: SkeletonPulseAnimation;
91
- /**
92
- * Entering animation for the skeleton
93
- */
94
- }>;
95
-
96
- /**
97
- * Props for the main Skeleton component
98
- */
99
- export interface SkeletonProps extends AnimatedProps<ViewProps> {
100
- /**
101
- * Child components to show when not loading
102
- */
103
- children?: React.ReactNode;
104
-
105
- /**
106
- * Whether the skeleton is currently loading
107
- * @default true
108
- */
109
- isLoading?: boolean;
110
-
111
- /**
112
- * Animation variant
113
- * @default 'shimmer'
114
- */
115
- variant?: SkeletonAnimation;
116
-
117
- /**
118
- * Animation configuration
119
- */
120
- animation?: SkeletonRootAnimation;
121
-
122
- /**
123
- * Whether animated styles (react-native-reanimated) are active
124
- * When `false`, the animated style is removed and you can implement custom logic
125
- * This prop should only be used when you want to write custom styling logic instead of the default animated styles
126
- * @default true
127
- */
128
- isAnimatedStyleActive?: boolean;
129
-
130
- /**
131
- * Additional CSS classes for styling
132
- *
133
- * @note The following style properties are occupied by animations and cannot be set via className:
134
- * - `opacity` - Animated for pulse variant transitions (min: 0.5, max: 1)
135
- *
136
- * The shimmer variant uses an internal overlay with `transform` (translateX) animation, which doesn't affect the className prop.
137
- *
138
- * To customize these properties, use the `animation` prop:
139
- * ```tsx
140
- * <Skeleton
141
- * variant="pulse"
142
- * animation={{
143
- * pulse: { minOpacity: 0.5, maxOpacity: 1, duration: 1000, easing: Easing.inOut(Easing.ease) }
144
- * }}
145
- * />
146
- * ```
147
- *
148
- * For shimmer variant:
149
- * ```tsx
150
- * <Skeleton
151
- * variant="shimmer"
152
- * animation={{
153
- * shimmer: { duration: 1500, speed: 1, highlightColor: '#ffffff', easing: Easing.linear }
154
- * }}
155
- * />
156
- * ```
157
- *
158
- * To completely disable animated styles and use your own via className or style prop, set `isAnimatedStyleActive={false}`.
159
- */
160
- className?: string;
161
- }
162
-
163
- /**
164
- * Context value for skeleton animation provider
165
- */
166
- export interface SkeletonAnimationContextValue {
167
- /**
168
- * Whether the skeleton is currently loading
169
- */
170
- isLoading: boolean;
171
- /**
172
- * Animation variant
173
- */
174
- variant: SkeletonAnimation;
175
- /**
176
- * Shared animation progress value
177
- */
178
- progress: SharedValue<number>;
179
- /**
180
- * Component width for shimmer calculation
181
- */
182
- componentWidth: number;
183
- /**
184
- * Component offset for shimmer calculation
185
- */
186
- offset: number;
187
- /**
188
- * Screen width for animation calculation
189
- */
190
- screenWidth: number;
191
- }
@@ -1,7 +0,0 @@
1
- export { default as SkeletonGroup } from './skeleton-group';
2
- export { skeletonGroupClassNames } from './skeleton-group.styles';
3
- export type {
4
- SkeletonGroupContextValue,
5
- SkeletonGroupItemProps,
6
- SkeletonGroupRootProps,
7
- } from './skeleton-group.types';
@@ -1,7 +0,0 @@
1
- /**
2
- * Display names for SkeletonGroup components
3
- */
4
- export const DISPLAY_NAME = {
5
- SKELETON_GROUP_ROOT: 'HeroUINative.SkeletonGroup.Root',
6
- SKELETON_GROUP_ITEM: 'HeroUINative.SkeletonGroup.Item',
7
- };
@@ -1,247 +0,0 @@
1
- # SkeletonGroup
2
-
3
- Coordinates multiple skeleton loading placeholders with centralized animation control.
4
-
5
- ## Import
6
-
7
- ```tsx
8
- import { SkeletonGroup } from '@/heroui';
9
- ```
10
-
11
- ## Anatomy
12
-
13
- ```tsx
14
- <SkeletonGroup>
15
- <SkeletonGroup.Item />
16
- </SkeletonGroup>
17
- ```
18
-
19
- - **SkeletonGroup**: Root container that provides centralized control for all skeleton items
20
- - **SkeletonGroup.Item**: Individual skeleton item that inherits props from the parent group
21
-
22
- ## Usage
23
-
24
- ### Basic Usage
25
-
26
- The SkeletonGroup component manages multiple skeleton items with shared loading state and animation.
27
-
28
- ```tsx
29
- <SkeletonGroup isLoading={isLoading}>
30
- <SkeletonGroup.Item className="h-4 w-full rounded-md" />
31
- <SkeletonGroup.Item className="h-4 w-3/4 rounded-md" />
32
- <SkeletonGroup.Item className="h-4 w-1/2 rounded-md" />
33
- </SkeletonGroup>
34
- ```
35
-
36
- ### With Container Layout
37
-
38
- Use className on the group to control layout of skeleton items.
39
-
40
- ```tsx
41
- <SkeletonGroup isLoading={isLoading} className="flex-row items-center gap-3">
42
- <SkeletonGroup.Item className="h-12 w-12 rounded-lg" />
43
- <View className="flex-1 gap-1.5">
44
- <SkeletonGroup.Item className="h-4 w-full rounded-md" />
45
- <SkeletonGroup.Item className="h-3 w-2/3 rounded-md" />
46
- </View>
47
- </SkeletonGroup>
48
- ```
49
-
50
- ### With isSkeletonOnly for Pure Skeleton Layouts
51
-
52
- Use `isSkeletonOnly` when the group contains only skeleton placeholders with layout wrappers (like View) that have no content to render in the loaded state. This prop hides the entire group when `isLoading` is false, preventing empty containers from affecting your layout.
53
-
54
- ```tsx
55
- <SkeletonGroup
56
- isLoading={isLoading}
57
- isSkeletonOnly // Hides entire group when isLoading is false
58
- className="flex-row items-center gap-3"
59
- >
60
- <SkeletonGroup.Item className="h-12 w-12 rounded-lg" />
61
- {/* This View is only for layout, no content */}
62
- <View className="flex-1 gap-1.5">
63
- <SkeletonGroup.Item className="h-4 w-full rounded-md" />
64
- <SkeletonGroup.Item className="h-3 w-2/3 rounded-md" />
65
- </View>
66
- </SkeletonGroup>
67
- ```
68
-
69
- ### With Animation Variants
70
-
71
- Control animation style for all items in the group.
72
-
73
- ```tsx
74
- <SkeletonGroup isLoading={isLoading} variant="pulse">
75
- <SkeletonGroup.Item className="h-10 w-10 rounded-full" />
76
- <SkeletonGroup.Item className="h-4 w-32 rounded-md" />
77
- <SkeletonGroup.Item className="h-3 w-24 rounded-md" />
78
- </SkeletonGroup>
79
- ```
80
-
81
- ### With Custom Animation Configuration
82
-
83
- Configure shimmer or pulse animations for the entire group.
84
-
85
- ```tsx
86
- <SkeletonGroup
87
- isLoading={isLoading}
88
- variant="shimmer"
89
- animation={{
90
- shimmer: {
91
- duration: 2000,
92
- highlightColor: 'rgba(59, 130, 246, 0.3)',
93
- },
94
- }}
95
- >
96
- <SkeletonGroup.Item className="h-16 w-full rounded-lg" />
97
- <SkeletonGroup.Item className="h-4 w-3/4 rounded-md" />
98
- </SkeletonGroup>
99
- ```
100
-
101
- ### With Enter/Exit Animations
102
-
103
- Apply Reanimated transitions when the group appears or disappears.
104
-
105
- ```tsx
106
- <SkeletonGroup
107
- entering={FadeInLeft}
108
- exiting={FadeOutRight}
109
- isLoading={isLoading}
110
- className="w-full gap-2"
111
- >
112
- <SkeletonGroup.Item className="h-4 w-full rounded-md" />
113
- <SkeletonGroup.Item className="h-4 w-3/4 rounded-md" />
114
- </SkeletonGroup>
115
- ```
116
-
117
- ## Example
118
-
119
- ```tsx
120
- import { Card, SkeletonGroup, Avatar } from '@/heroui';
121
- import { useState } from 'react';
122
- import { Text, View, Image } from 'react-native';
123
-
124
- export default function SkeletonGroupExample() {
125
- const [isLoading, setIsLoading] = useState(true);
126
-
127
- return (
128
- <SkeletonGroup isLoading={isLoading}>
129
- <Card className="p-4">
130
- <Card.Header>
131
- <View className="flex-row items-center gap-3 mb-4">
132
- <SkeletonGroup.Item className="h-10 w-10 rounded-full">
133
- <Avatar size="sm" alt="Avatar">
134
- <Avatar.Image
135
- source={{ uri: 'https://i.pravatar.cc/150?img=4' }}
136
- />
137
- <Avatar.Fallback />
138
- </Avatar>
139
- </SkeletonGroup.Item>
140
-
141
- <View className="flex-1 gap-1">
142
- <SkeletonGroup.Item className="h-3 w-32 rounded-md">
143
- <Text className="font-semibold text-foreground">John Doe</Text>
144
- </SkeletonGroup.Item>
145
- <SkeletonGroup.Item className="h-3 w-24 rounded-md">
146
- <Text className="text-sm text-muted">@johndoe</Text>
147
- </SkeletonGroup.Item>
148
- </View>
149
- </View>
150
-
151
- <View className="mb-4 gap-1.5">
152
- <SkeletonGroup.Item className="h-4 w-full rounded-md">
153
- <Text className="text-base text-foreground">
154
- This is the first line of the post content.
155
- </Text>
156
- </SkeletonGroup.Item>
157
- <SkeletonGroup.Item className="h-4 w-full rounded-md">
158
- <Text className="text-base text-foreground">
159
- Second line with more interesting content to read.
160
- </Text>
161
- </SkeletonGroup.Item>
162
- <SkeletonGroup.Item className="h-4 w-2/3 rounded-md">
163
- <Text className="text-base text-foreground">
164
- Last line is shorter.
165
- </Text>
166
- </SkeletonGroup.Item>
167
- </View>
168
- </Card.Header>
169
-
170
- <SkeletonGroup.Item className="h-48 w-full rounded-lg">
171
- <View className="h-48 bg-surface-tertiary rounded-lg overflow-hidden">
172
- <Image
173
- source={{
174
- uri: 'https://heroui-assets.nyc3.cdn.digitaloceanspaces.com/backgrounds/cards/car1.jpg',
175
- }}
176
- className="h-full w-full"
177
- />
178
- </View>
179
- </SkeletonGroup.Item>
180
- </Card>
181
- </SkeletonGroup>
182
- );
183
- }
184
- ```
185
-
186
- You can find more examples in the [GitHub repository](<https://github.com/heroui-inc/heroui-native/blob/rc/example/src/app/(home)/components/skeleton-group.tsx>).
187
-
188
- ## API Reference
189
-
190
- ### SkeletonGroup
191
-
192
- | prop | type | default | description |
193
- | ----------------------- | -------------------------------- | ----------- | ---------------------------------------------------------------------- |
194
- | `children` | `React.ReactNode` | - | SkeletonGroup.Item components and layout elements |
195
- | `isLoading` | `boolean` | `true` | Whether the skeleton items are currently loading |
196
- | `isSkeletonOnly` | `boolean` | `false` | Hides entire group when isLoading is false (for skeleton-only layouts) |
197
- | `variant` | `'shimmer' \| 'pulse' \| 'none'` | `'shimmer'` | Animation variant for all items in the group |
198
- | `animation` | `SkeletonRootAnimation` | - | Animation configuration |
199
- | `className` | `string` | - | Additional CSS classes for the group container |
200
- | `style` | `StyleProp<ViewStyle>` | - | Custom styles for the group container |
201
- | `...Animated.ViewProps` | `AnimatedProps<ViewProps>` | - | All Reanimated Animated.View props are supported |
202
-
203
- #### SkeletonRootAnimation
204
-
205
- Animation configuration for SkeletonGroup component. Can be:
206
-
207
- - `false` or `"disabled"`: Disable only root animations
208
- - `"disable-all"`: Disable all animations including children
209
- - `true` or `undefined`: Use default animations
210
- - `object`: Custom animation configuration
211
-
212
- | prop | type | default | description |
213
- | ------------------------ | ---------------------------------------- | --------------------------- | ----------------------------------------------- |
214
- | `state` | `'disabled' \| 'disable-all' \| boolean` | - | Disable animations while customizing properties |
215
- | `entering.value` | `EntryOrExitLayoutType` | `FadeIn` | Custom entering animation |
216
- | `exiting.value` | `EntryOrExitLayoutType` | `FadeOut` | Custom exiting animation |
217
- | `shimmer.duration` | `number` | `1500` | Animation duration in milliseconds |
218
- | `shimmer.speed` | `number` | `1` | Speed multiplier for the animation |
219
- | `shimmer.highlightColor` | `string` | - | Highlight color for the shimmer effect |
220
- | `shimmer.easing` | `EasingFunction` | `Easing.linear` | Easing function for the animation |
221
- | `pulse.duration` | `number` | `1000` | Animation duration in milliseconds |
222
- | `pulse.minOpacity` | `number` | `0.5` | Minimum opacity value |
223
- | `pulse.maxOpacity` | `number` | `1` | Maximum opacity value |
224
- | `pulse.easing` | `EasingFunction` | `Easing.inOut(Easing.ease)` | Easing function for the animation |
225
-
226
- ### SkeletonGroup.Item
227
-
228
- | prop | type | default | description |
229
- | ----------------------- | -------------------------------- | --------- | ------------------------------------------------------------------- |
230
- | `children` | `React.ReactNode` | - | Content to show when not loading |
231
- | `isLoading` | `boolean` | inherited | Whether the skeleton is currently loading (overrides group setting) |
232
- | `variant` | `'shimmer' \| 'pulse' \| 'none'` | inherited | Animation variant (overrides group setting) |
233
- | `animation` | `SkeletonRootAnimation` | inherited | Animation configuration (overrides group setting) |
234
- | `className` | `string` | - | Additional CSS classes for styling the item |
235
- | `...Animated.ViewProps` | `AnimatedProps<ViewProps>` | - | All Reanimated Animated.View props are supported |
236
-
237
- ## Special Notes
238
-
239
- ### Props Inheritance
240
-
241
- SkeletonGroup.Item components inherit all animation-related props from their parent SkeletonGroup:
242
-
243
- - `isLoading`
244
- - `variant`
245
- - `animation`
246
-
247
- Individual items can override any inherited prop by providing their own value.
@@ -1,10 +0,0 @@
1
- import { tv } from 'tailwind-variants';
2
- import { combineStyles } from '../../helpers/internal/utils';
3
-
4
- const root = tv({
5
- base: '',
6
- });
7
-
8
- export const skeletonGroupClassNames = combineStyles({
9
- root,
10
- });