@seed-design/lynx-react 0.7.1 → 0.9.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 (265) hide show
  1. package/lib/components/Accordion/Accordion.jsx +2 -2
  2. package/lib/components/ActionButton/ActionButton.jsx +1 -1
  3. package/lib/components/AlertDialog/AlertDialog.d.ts +64 -0
  4. package/lib/components/AlertDialog/AlertDialog.d.ts.map +1 -0
  5. package/lib/components/AlertDialog/AlertDialog.jsx +138 -0
  6. package/lib/components/AlertDialog/AlertDialog.namespace.d.ts +2 -0
  7. package/lib/components/AlertDialog/AlertDialog.namespace.d.ts.map +1 -0
  8. package/lib/components/AlertDialog/AlertDialog.namespace.js +17 -0
  9. package/lib/components/AlertDialog/index.d.ts +3 -0
  10. package/lib/components/AlertDialog/index.d.ts.map +1 -0
  11. package/lib/components/AppBar/AppBar.d.ts +14 -1
  12. package/lib/components/AppBar/AppBar.d.ts.map +1 -1
  13. package/lib/components/AppBar/AppBar.jsx +42 -16
  14. package/lib/components/AppBar/AppBar.namespace.d.ts +1 -1
  15. package/lib/components/AppBar/AppBar.namespace.d.ts.map +1 -1
  16. package/lib/components/AppBar/context.d.ts +2 -1
  17. package/lib/components/AppBar/context.d.ts.map +1 -1
  18. package/lib/components/AppBar/index.d.ts +1 -1
  19. package/lib/components/AppBar/index.d.ts.map +1 -1
  20. package/lib/components/AppBar/useAppBar.d.ts +2 -1
  21. package/lib/components/AppBar/useAppBar.d.ts.map +1 -1
  22. package/lib/components/AppBar/useAppBar.js +17 -15
  23. package/lib/components/AttachmentDisplay/AttachmentDisplay.d.ts +182 -0
  24. package/lib/components/AttachmentDisplay/AttachmentDisplay.d.ts.map +1 -0
  25. package/lib/components/AttachmentDisplay/AttachmentDisplay.jsx +444 -0
  26. package/lib/components/AttachmentDisplay/index.d.ts +2 -0
  27. package/lib/components/AttachmentDisplay/index.d.ts.map +1 -0
  28. package/lib/components/AttachmentInput/AttachmentInput.d.ts +179 -0
  29. package/lib/components/AttachmentInput/AttachmentInput.d.ts.map +1 -0
  30. package/lib/components/AttachmentInput/AttachmentInput.jsx +520 -0
  31. package/lib/components/AttachmentInput/index.d.ts +2 -0
  32. package/lib/components/AttachmentInput/index.d.ts.map +1 -0
  33. package/lib/components/BottomSheet/BottomSheet.d.ts +1 -1
  34. package/lib/components/BottomSheet/BottomSheet.d.ts.map +1 -1
  35. package/lib/components/BottomSheet/BottomSheet.jsx +1 -7
  36. package/lib/components/Box/Box.d.ts +3 -3
  37. package/lib/components/Box/Box.d.ts.map +1 -1
  38. package/lib/components/Callout/Callout.jsx +2 -2
  39. package/lib/components/Checkbox/Checkbox.jsx +2 -2
  40. package/lib/components/Chip/Chip.jsx +2 -2
  41. package/lib/components/ChipTabs/ChipTabs.d.ts +41 -0
  42. package/lib/components/ChipTabs/ChipTabs.d.ts.map +1 -0
  43. package/lib/components/ChipTabs/ChipTabs.jsx +39 -0
  44. package/lib/components/ChipTabs/ChipTabs.namespace.d.ts +2 -0
  45. package/lib/components/ChipTabs/ChipTabs.namespace.d.ts.map +1 -0
  46. package/lib/components/ChipTabs/ChipTabs.namespace.js +13 -0
  47. package/lib/components/ChipTabs/index.d.ts +3 -0
  48. package/lib/components/ChipTabs/index.d.ts.map +1 -0
  49. package/lib/components/ContextualFloatingButton/ContextualFloatingButton.d.ts +18 -0
  50. package/lib/components/ContextualFloatingButton/ContextualFloatingButton.d.ts.map +1 -0
  51. package/lib/components/ContextualFloatingButton/ContextualFloatingButton.jsx +113 -0
  52. package/lib/components/ContextualFloatingButton/index.d.ts +2 -0
  53. package/lib/components/ContextualFloatingButton/index.d.ts.map +1 -0
  54. package/lib/components/Dialog/Dialog.d.ts +87 -0
  55. package/lib/components/Dialog/Dialog.d.ts.map +1 -0
  56. package/lib/components/Dialog/Dialog.jsx +147 -0
  57. package/lib/components/Dialog/Dialog.namespace.d.ts +2 -0
  58. package/lib/components/Dialog/Dialog.namespace.d.ts.map +1 -0
  59. package/lib/components/Dialog/Dialog.namespace.js +18 -0
  60. package/lib/components/Dialog/index.d.ts +3 -0
  61. package/lib/components/Dialog/index.d.ts.map +1 -0
  62. package/lib/components/FloatingActionButton/FloatingActionButton.d.ts +23 -0
  63. package/lib/components/FloatingActionButton/FloatingActionButton.d.ts.map +1 -0
  64. package/lib/components/FloatingActionButton/FloatingActionButton.jsx +76 -0
  65. package/lib/components/FloatingActionButton/FloatingActionButton.namespace.d.ts +2 -0
  66. package/lib/components/FloatingActionButton/FloatingActionButton.namespace.d.ts.map +1 -0
  67. package/lib/components/FloatingActionButton/FloatingActionButton.namespace.js +10 -0
  68. package/lib/components/FloatingActionButton/index.d.ts +3 -0
  69. package/lib/components/FloatingActionButton/index.d.ts.map +1 -0
  70. package/lib/components/HelpBubble/HelpBubble.d.ts +67 -0
  71. package/lib/components/HelpBubble/HelpBubble.d.ts.map +1 -0
  72. package/lib/components/HelpBubble/HelpBubble.jsx +600 -0
  73. package/lib/components/HelpBubble/HelpBubble.namespace.d.ts +2 -0
  74. package/lib/components/HelpBubble/HelpBubble.namespace.d.ts.map +1 -0
  75. package/lib/components/HelpBubble/HelpBubble.namespace.js +18 -0
  76. package/lib/components/HelpBubble/index.d.ts +3 -0
  77. package/lib/components/HelpBubble/index.d.ts.map +1 -0
  78. package/lib/components/Icon/Icon.d.ts +1 -0
  79. package/lib/components/Icon/Icon.d.ts.map +1 -1
  80. package/lib/components/Icon/Icon.jsx +2 -1
  81. package/lib/components/IdentityPlaceholder/IdentityPlaceholder.d.ts +28 -0
  82. package/lib/components/IdentityPlaceholder/IdentityPlaceholder.d.ts.map +1 -0
  83. package/lib/components/IdentityPlaceholder/IdentityPlaceholder.jsx +37 -0
  84. package/lib/components/IdentityPlaceholder/IdentityPlaceholder.namespace.d.ts +2 -0
  85. package/lib/components/IdentityPlaceholder/IdentityPlaceholder.namespace.d.ts.map +1 -0
  86. package/lib/components/IdentityPlaceholder/IdentityPlaceholder.namespace.js +9 -0
  87. package/lib/components/IdentityPlaceholder/identity-placeholder-business.js +4 -0
  88. package/lib/components/IdentityPlaceholder/identity-placeholder-person.js +4 -0
  89. package/lib/components/IdentityPlaceholder/index.d.ts +3 -0
  90. package/lib/components/IdentityPlaceholder/index.d.ts.map +1 -0
  91. package/lib/components/InputButton/InputButton.d.ts +2 -0
  92. package/lib/components/InputButton/InputButton.d.ts.map +1 -1
  93. package/lib/components/InputButton/InputButton.jsx +40 -8
  94. package/lib/components/List/List.d.ts +1 -1
  95. package/lib/components/List/List.d.ts.map +1 -1
  96. package/lib/components/List/List.jsx +26 -12
  97. package/lib/components/Menu/Menu.d.ts.map +1 -1
  98. package/lib/components/Menu/Menu.jsx +15 -5
  99. package/lib/components/PageBanner/PageBanner.d.ts +3 -0
  100. package/lib/components/PageBanner/PageBanner.d.ts.map +1 -1
  101. package/lib/components/PageBanner/PageBanner.jsx +49 -11
  102. package/lib/components/QuantityPicker/QuantityPicker.d.ts +53 -0
  103. package/lib/components/QuantityPicker/QuantityPicker.d.ts.map +1 -0
  104. package/lib/components/QuantityPicker/QuantityPicker.jsx +282 -0
  105. package/lib/components/QuantityPicker/QuantityPicker.namespace.d.ts +2 -0
  106. package/lib/components/QuantityPicker/QuantityPicker.namespace.d.ts.map +1 -0
  107. package/lib/components/QuantityPicker/QuantityPicker.namespace.js +11 -0
  108. package/lib/components/QuantityPicker/index.d.ts +3 -0
  109. package/lib/components/QuantityPicker/index.d.ts.map +1 -0
  110. package/lib/components/RadioGroup/RadioGroup.jsx +2 -2
  111. package/lib/components/ReactionButton/ReactionButton.d.ts +1 -1
  112. package/lib/components/ReactionButton/ReactionButton.d.ts.map +1 -1
  113. package/lib/components/ReactionButton/ReactionButton.jsx +22 -13
  114. package/lib/components/ScrollFog/ScrollFog.d.ts +41 -0
  115. package/lib/components/ScrollFog/ScrollFog.d.ts.map +1 -0
  116. package/lib/components/ScrollFog/ScrollFog.jsx +65 -0
  117. package/lib/components/ScrollFog/index.d.ts +2 -0
  118. package/lib/components/ScrollFog/index.d.ts.map +1 -0
  119. package/lib/components/SegmentedControl/SegmentedControl.jsx +2 -2
  120. package/lib/components/Select/Select.d.ts +112 -0
  121. package/lib/components/Select/Select.d.ts.map +1 -0
  122. package/lib/components/Select/Select.jsx +885 -0
  123. package/lib/components/Select/Select.namespace.d.ts +2 -0
  124. package/lib/components/Select/Select.namespace.d.ts.map +1 -0
  125. package/lib/components/Select/Select.namespace.js +23 -0
  126. package/lib/components/Select/index.d.ts +3 -0
  127. package/lib/components/Select/index.d.ts.map +1 -0
  128. package/lib/components/Skeleton/Skeleton.d.ts +15 -0
  129. package/lib/components/Skeleton/Skeleton.d.ts.map +1 -0
  130. package/lib/components/Skeleton/Skeleton.jsx +18 -0
  131. package/lib/components/Skeleton/index.d.ts +2 -0
  132. package/lib/components/Skeleton/index.d.ts.map +1 -0
  133. package/lib/components/Slider/Slider.d.ts +101 -0
  134. package/lib/components/Slider/Slider.d.ts.map +1 -0
  135. package/lib/components/Slider/Slider.jsx +573 -0
  136. package/lib/components/Slider/Slider.namespace.d.ts +2 -0
  137. package/lib/components/Slider/Slider.namespace.d.ts.map +1 -0
  138. package/lib/components/Slider/Slider.namespace.js +19 -0
  139. package/lib/components/Slider/Slider.utils.d.ts +19 -0
  140. package/lib/components/Slider/Slider.utils.d.ts.map +1 -0
  141. package/lib/components/Slider/Slider.utils.js +106 -0
  142. package/lib/components/Slider/index.d.ts +3 -0
  143. package/lib/components/Slider/index.d.ts.map +1 -0
  144. package/lib/components/Stack/Stack.d.ts +7 -9
  145. package/lib/components/Stack/Stack.d.ts.map +1 -1
  146. package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.d.ts.map +1 -1
  147. package/lib/components/SwipeableMenuSheet/SwipeableMenuSheet.jsx +22 -8
  148. package/lib/components/Switch/Switch.d.ts.map +1 -1
  149. package/lib/components/Switch/Switch.jsx +5 -3
  150. package/lib/components/Tabs/Tabs.d.ts +34 -2
  151. package/lib/components/Tabs/Tabs.d.ts.map +1 -1
  152. package/lib/components/Tabs/Tabs.jsx +186 -56
  153. package/lib/components/Tabs/Tabs.utils.d.ts +14 -1
  154. package/lib/components/Tabs/Tabs.utils.d.ts.map +1 -1
  155. package/lib/components/Tabs/Tabs.utils.js +24 -3
  156. package/lib/components/Tabs/index.d.ts +1 -1
  157. package/lib/components/Tabs/index.d.ts.map +1 -1
  158. package/lib/components/index.d.ts +14 -0
  159. package/lib/components/index.d.ts.map +1 -1
  160. package/lib/hooks/useControllableState.d.ts +1 -14
  161. package/lib/hooks/useControllableState.d.ts.map +1 -1
  162. package/lib/hooks/usePressTap.d.ts +1 -27
  163. package/lib/hooks/usePressTap.d.ts.map +1 -1
  164. package/lib/hooks/useSafeArea.d.ts +8 -4
  165. package/lib/hooks/useSafeArea.d.ts.map +1 -1
  166. package/lib/hooks/useSafeArea.js +22 -20
  167. package/lib/index.js +29 -6
  168. package/lib/{hooks/useControllableState.js → packages/lynx-react-headless/use-controllable-state/lib/index.js} +2 -3
  169. package/lib/{hooks/usePressTap.js → packages/lynx-react-headless/use-press-tap/lib/index.js} +13 -10
  170. package/lib/types.d.ts +1 -0
  171. package/lib/types.d.ts.map +1 -1
  172. package/lib/utils/styled.d.ts +46 -6
  173. package/lib/utils/styled.d.ts.map +1 -1
  174. package/lib/utils/styled.js +19 -4
  175. package/package.json +9 -5
  176. package/src/components/AlertDialog/AlertDialog.namespace.ts +22 -0
  177. package/src/components/AlertDialog/AlertDialog.test.tsx +226 -0
  178. package/src/components/AlertDialog/AlertDialog.tsx +374 -0
  179. package/src/components/AlertDialog/index.ts +24 -0
  180. package/src/components/AppBar/AppBar.namespace.ts +1 -0
  181. package/src/components/AppBar/AppBar.test.tsx +252 -3
  182. package/src/components/AppBar/AppBar.tsx +108 -25
  183. package/src/components/AppBar/context.ts +3 -1
  184. package/src/components/AppBar/index.ts +1 -0
  185. package/src/components/AppBar/useAppBar.ts +21 -15
  186. package/src/components/AttachmentDisplay/AttachmentDisplay.tsx +886 -0
  187. package/src/components/AttachmentDisplay/index.ts +48 -0
  188. package/src/components/AttachmentInput/AttachmentInput.tsx +1001 -0
  189. package/src/components/AttachmentInput/index.ts +49 -0
  190. package/src/components/BottomSheet/BottomSheet.test.tsx +22 -7
  191. package/src/components/BottomSheet/BottomSheet.tsx +1 -19
  192. package/src/components/Box/Box.test.tsx +104 -0
  193. package/src/components/Box/Box.tsx +9 -6
  194. package/src/components/ChipTabs/ChipTabs.namespace.ts +14 -0
  195. package/src/components/ChipTabs/ChipTabs.tsx +119 -0
  196. package/src/components/ChipTabs/index.ts +16 -0
  197. package/src/components/ContextualFloatingButton/ContextualFloatingButton.test.tsx +63 -0
  198. package/src/components/ContextualFloatingButton/ContextualFloatingButton.tsx +232 -0
  199. package/src/components/ContextualFloatingButton/index.ts +4 -0
  200. package/src/components/Dialog/Dialog.namespace.ts +24 -0
  201. package/src/components/Dialog/Dialog.test.tsx +172 -0
  202. package/src/components/Dialog/Dialog.tsx +373 -0
  203. package/src/components/Dialog/index.ts +26 -0
  204. package/src/components/FloatingActionButton/FloatingActionButton.namespace.ts +8 -0
  205. package/src/components/FloatingActionButton/FloatingActionButton.test.tsx +59 -0
  206. package/src/components/FloatingActionButton/FloatingActionButton.tsx +207 -0
  207. package/src/components/FloatingActionButton/index.ts +10 -0
  208. package/src/components/HelpBubble/HelpBubble.namespace.ts +24 -0
  209. package/src/components/HelpBubble/HelpBubble.tsx +998 -0
  210. package/src/components/HelpBubble/index.ts +26 -0
  211. package/src/components/Icon/Icon.test.tsx +0 -3
  212. package/src/components/Icon/Icon.tsx +11 -1
  213. package/src/components/IdentityPlaceholder/IdentityPlaceholder.namespace.ts +6 -0
  214. package/src/components/IdentityPlaceholder/IdentityPlaceholder.tsx +103 -0
  215. package/src/components/IdentityPlaceholder/assets.d.ts +4 -0
  216. package/src/components/IdentityPlaceholder/identity-placeholder-business.webp +0 -0
  217. package/src/components/IdentityPlaceholder/identity-placeholder-person.webp +0 -0
  218. package/src/components/IdentityPlaceholder/index.ts +8 -0
  219. package/src/components/InputButton/InputButton.test.tsx +128 -1
  220. package/src/components/InputButton/InputButton.tsx +60 -9
  221. package/src/components/List/List.test.tsx +54 -2
  222. package/src/components/List/List.tsx +43 -10
  223. package/src/components/Menu/Menu.tsx +14 -4
  224. package/src/components/Menu/__tests__/Menu.test.tsx +34 -0
  225. package/src/components/PageBanner/PageBanner.test.tsx +110 -3
  226. package/src/components/PageBanner/PageBanner.tsx +83 -19
  227. package/src/components/QuantityPicker/QuantityPicker.namespace.ts +10 -0
  228. package/src/components/QuantityPicker/QuantityPicker.test.tsx +235 -0
  229. package/src/components/QuantityPicker/QuantityPicker.tsx +605 -0
  230. package/src/components/QuantityPicker/index.ts +14 -0
  231. package/src/components/ReactionButton/ReactionButton.feedback.test.tsx +50 -0
  232. package/src/components/ReactionButton/ReactionButton.test.tsx +5 -3
  233. package/src/components/ReactionButton/ReactionButton.tsx +20 -12
  234. package/src/components/ScrollFog/ScrollFog.test.tsx +222 -0
  235. package/src/components/ScrollFog/ScrollFog.tsx +172 -0
  236. package/src/components/ScrollFog/index.ts +1 -0
  237. package/src/components/Select/Select.namespace.ts +34 -0
  238. package/src/components/Select/Select.test.tsx +297 -0
  239. package/src/components/Select/Select.tsx +1483 -0
  240. package/src/components/Select/index.ts +39 -0
  241. package/src/components/Skeleton/Skeleton.test.tsx +64 -0
  242. package/src/components/Skeleton/Skeleton.tsx +45 -0
  243. package/src/components/Skeleton/index.ts +1 -0
  244. package/src/components/Slider/Slider.namespace.ts +26 -0
  245. package/src/components/Slider/Slider.test.tsx +260 -0
  246. package/src/components/Slider/Slider.tsx +897 -0
  247. package/src/components/Slider/Slider.utils.ts +167 -0
  248. package/src/components/Slider/index.ts +30 -0
  249. package/src/components/Stack/Stack.test.tsx +7 -0
  250. package/src/components/Stack/Stack.tsx +11 -10
  251. package/src/components/SwipeableMenuSheet/SwipeableMenuSheet.test.tsx +21 -1
  252. package/src/components/SwipeableMenuSheet/SwipeableMenuSheet.tsx +30 -7
  253. package/src/components/Switch/Switch.tsx +14 -13
  254. package/src/components/Tabs/Tabs.test.tsx +218 -1
  255. package/src/components/Tabs/Tabs.tsx +346 -75
  256. package/src/components/Tabs/Tabs.utils.ts +51 -1
  257. package/src/components/Tabs/index.ts +17 -1
  258. package/src/components/index.ts +14 -0
  259. package/src/hooks/useControllableState.ts +1 -43
  260. package/src/hooks/usePressTap.test.ts +23 -11
  261. package/src/hooks/usePressTap.ts +1 -60
  262. package/src/hooks/useSafeArea.test.ts +13 -1
  263. package/src/hooks/useSafeArea.ts +25 -23
  264. package/src/types.ts +1 -0
  265. package/src/utils/styled.ts +127 -9
@@ -0,0 +1,41 @@
1
+ import { ChipTabsVariantProps } from '@seed-design/lynx-css/recipes/chip-tabs';
2
+ import { TabsCarouselCameraProps, TabsCarouselProps, TabsContentProps, TabsListProps, TabsRootProps, TabsTriggerProps } from '../Tabs/Tabs';
3
+ import * as React from "@lynx-js/react";
4
+ type ChipTabsPublicVariantProps = Omit<ChipTabsVariantProps, "selected" | "pressed" | "disabled" | "inCarousel">;
5
+ /**
6
+ * @platform Lynx
7
+ *
8
+ * 웹 대비 미지원 기능:
9
+ * - `lazyMount`, `unmountOnExit`: native viewpager가 모든 page slot을 유지해야 함
10
+ * - 키보드 포커스와 roving tabindex
11
+ */
12
+ export interface ChipTabsRootProps extends Omit<TabsRootProps, "size" | "contentLayout" | "stickyList" | "triggerLayout">, ChipTabsPublicVariantProps {
13
+ }
14
+ /**
15
+ * Chip recipe와 Tabs의 controlled state, horizontal scrolling, and native pager behavior를 결합합니다.
16
+ */
17
+ export declare const ChipTabsRoot: React.ForwardRefExoticComponent<ChipTabsRootProps & React.RefAttributes<unknown>>;
18
+ export interface ChipTabsListProps extends Omit<TabsListProps, "scrollAlign"> {
19
+ /** 선택한 chip을 목록 안에서 정렬할 방식입니다. @defaultValue "nearest" */
20
+ scrollAlign?: TabsListProps["scrollAlign"];
21
+ }
22
+ /**
23
+ * ChipTabs는 이미 보이는 선택 chip을 움직이지 않도록 기본적으로 `"nearest"`를 사용합니다.
24
+ */
25
+ export declare const ChipTabsList: React.ForwardRefExoticComponent<Omit<ChipTabsListProps, "ref"> & React.RefAttributes<unknown>>;
26
+ /** Native text label and optional inline notification slot을 갖는 chip trigger입니다. */
27
+ export interface ChipTabsTriggerProps extends TabsTriggerProps {
28
+ }
29
+ export declare const ChipTabsTrigger: React.ForwardRefExoticComponent<TabsTriggerProps & React.RefAttributes<unknown>>;
30
+ export interface ChipTabsContentProps extends TabsContentProps {
31
+ }
32
+ export declare const ChipTabsContent: React.ForwardRefExoticComponent<TabsContentProps & React.RefAttributes<unknown>>;
33
+ /** @platform Lynx native viewpager를 사용하므로 Tabs Carousel의 미지원 prop과 동일합니다. */
34
+ export interface ChipTabsCarouselProps extends TabsCarouselProps {
35
+ }
36
+ export declare const ChipTabsCarousel: React.ForwardRefExoticComponent<TabsCarouselProps & React.RefAttributes<unknown>>;
37
+ export interface ChipTabsCarouselCameraProps extends TabsCarouselCameraProps {
38
+ }
39
+ export declare const ChipTabsCarouselCamera: React.ForwardRefExoticComponent<TabsCarouselCameraProps & React.RefAttributes<unknown>>;
40
+ export {};
41
+ //# sourceMappingURL=ChipTabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChipTabs.d.ts","sourceRoot":"","sources":["../../../src/components/ChipTabs/ChipTabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAY,KAAK,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAI9F,OAAO,EAOL,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACtB,MAAM,cAAc,CAAC;AAUtB,KAAK,0BAA0B,GAAG,IAAI,CACpC,oBAAoB,EACpB,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,CACnD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,eAAe,GAAG,YAAY,GAAG,eAAe,CAAC,EACpF,0BAA0B;CAAG;AAEjC;;GAEG;AACH,eAAO,MAAM,YAAY,mFA0BvB,CAAC;AAKH,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC;IAC3E,0DAA0D;IAC1D,WAAW,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,gGAIxB,CAAC;AAKF,mFAAmF;AACnF,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;CAAG;AAEjE,eAAO,MAAM,eAAe,kFAAc,CAAC;AAI3C,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;CAAG;AAEjE,eAAO,MAAM,eAAe,kFAAc,CAAC;AAI3C,6EAA6E;AAC7E,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;CAAG;AAEnE,eAAO,MAAM,gBAAgB,mFAAe,CAAC;AAI7C,MAAM,WAAW,2BAA4B,SAAQ,uBAAuB;CAAG;AAE/E,eAAO,MAAM,sBAAsB,yFAAqB,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { createSlotRecipeContext } from "../../utils/create-slot-recipe-context.jsx";
2
+ import { TabsCarousel, TabsCarouselCamera, TabsContent, TabsList, TabsRootPrimitive, TabsTrigger } from "../Tabs/Tabs.jsx";
3
+ import * as React from "@lynx-js/react";
4
+ import { chipTabs } from "@seed-design/lynx-css/recipes/chip-tabs";
5
+ //#region src/components/ChipTabs/ChipTabs.tsx
6
+ var CHIP_TABS_TRIGGER_GAP = 8;
7
+ var { ClassNamesProvider: ChipTabsClassNamesProvider } = createSlotRecipeContext(chipTabs);
8
+ /**
9
+ * Chip recipe와 Tabs의 controlled state, horizontal scrolling, and native pager behavior를 결합합니다.
10
+ */
11
+ var ChipTabsRoot = React.forwardRef((props, ref) => {
12
+ const [variantProps, rootProps] = chipTabs.splitVariantProps(props);
13
+ const getClassNames = React.useCallback((state = {}) => chipTabs({
14
+ ...variantProps,
15
+ selected: state.selected,
16
+ pressed: state.pressed,
17
+ disabled: state.disabled,
18
+ inCarousel: state.inCarousel
19
+ }), [variantProps]);
20
+ const recipe = React.useMemo(() => ({
21
+ getClassNames,
22
+ triggerGap: CHIP_TABS_TRIGGER_GAP
23
+ }), [getClassNames]);
24
+ return <ChipTabsClassNamesProvider value={getClassNames()}>
25
+ <TabsRootPrimitive {...rootProps} ref={ref} recipe={recipe} inlineNotification />
26
+ </ChipTabsClassNamesProvider>;
27
+ });
28
+ ChipTabsRoot.displayName = "ChipTabsRoot";
29
+ /**
30
+ * ChipTabs는 이미 보이는 선택 chip을 움직이지 않도록 기본적으로 `"nearest"`를 사용합니다.
31
+ */
32
+ var ChipTabsList = React.forwardRef(({ scrollAlign = "nearest", ...props }, ref) => <TabsList {...props} ref={ref} scrollAlign={scrollAlign} />);
33
+ ChipTabsList.displayName = "ChipTabsList";
34
+ var ChipTabsTrigger = TabsTrigger;
35
+ var ChipTabsContent = TabsContent;
36
+ var ChipTabsCarousel = TabsCarousel;
37
+ var ChipTabsCarouselCamera = TabsCarouselCamera;
38
+ //#endregion
39
+ export { ChipTabsCarousel, ChipTabsCarouselCamera, ChipTabsContent, ChipTabsList, ChipTabsRoot, ChipTabsTrigger };
@@ -0,0 +1,2 @@
1
+ export { ChipTabsCarousel as Carousel, ChipTabsCarouselCamera as CarouselCamera, ChipTabsContent as Content, ChipTabsList as List, ChipTabsRoot as Root, ChipTabsTrigger as Trigger, type ChipTabsCarouselCameraProps as CarouselCameraProps, type ChipTabsCarouselProps as CarouselProps, type ChipTabsContentProps as ContentProps, type ChipTabsListProps as ListProps, type ChipTabsRootProps as RootProps, type ChipTabsTriggerProps as TriggerProps, } from './ChipTabs';
2
+ //# sourceMappingURL=ChipTabs.namespace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChipTabs.namespace.d.ts","sourceRoot":"","sources":["../../../src/components/ChipTabs/ChipTabs.namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,IAAI,QAAQ,EAC5B,sBAAsB,IAAI,cAAc,EACxC,eAAe,IAAI,OAAO,EAC1B,YAAY,IAAI,IAAI,EACpB,YAAY,IAAI,IAAI,EACpB,eAAe,IAAI,OAAO,EAC1B,KAAK,2BAA2B,IAAI,mBAAmB,EACvD,KAAK,qBAAqB,IAAI,aAAa,EAC3C,KAAK,oBAAoB,IAAI,YAAY,EACzC,KAAK,iBAAiB,IAAI,SAAS,EACnC,KAAK,iBAAiB,IAAI,SAAS,EACnC,KAAK,oBAAoB,IAAI,YAAY,GAC1C,MAAM,YAAY,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
2
+ import { ChipTabsCarousel, ChipTabsCarouselCamera, ChipTabsContent, ChipTabsList, ChipTabsRoot, ChipTabsTrigger } from "./ChipTabs.jsx";
3
+ //#region src/components/ChipTabs/ChipTabs.namespace.ts
4
+ var ChipTabs_namespace_exports = /* @__PURE__ */ __exportAll({
5
+ Carousel: () => ChipTabsCarousel,
6
+ CarouselCamera: () => ChipTabsCarouselCamera,
7
+ Content: () => ChipTabsContent,
8
+ List: () => ChipTabsList,
9
+ Root: () => ChipTabsRoot,
10
+ Trigger: () => ChipTabsTrigger
11
+ });
12
+ //#endregion
13
+ export { ChipTabs_namespace_exports };
@@ -0,0 +1,3 @@
1
+ export { ChipTabsCarousel, ChipTabsCarouselCamera, ChipTabsContent, ChipTabsList, ChipTabsRoot, ChipTabsTrigger, type ChipTabsCarouselCameraProps, type ChipTabsCarouselProps, type ChipTabsContentProps, type ChipTabsListProps, type ChipTabsRootProps, type ChipTabsTriggerProps, } from './ChipTabs';
2
+ export * as ChipTabs from './ChipTabs.namespace';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ChipTabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { ContextualFloatingButtonVariantProps } from '@seed-design/lynx-css/recipes/contextual-floating-button';
2
+ import { LynxAccessibilityProps, LynxPressableProps, LynxStyledElementProps } from '../../types';
3
+ import * as React from "@lynx-js/react";
4
+ type ContextualFloatingButtonPublicVariantProps = Omit<ContextualFloatingButtonVariantProps, "pressed">;
5
+ /**
6
+ * @platform Lynx
7
+ *
8
+ * Web version differences:
9
+ * - Native `<view>` and `bindtap` / `main-thread:bindtap` replace HTML button events,
10
+ * form props, and `asChild`.
11
+ * - `loading` blocks both native tap callbacks, unlike the React reference which only
12
+ * exposes pending state to its underlying button.
13
+ */
14
+ export interface ContextualFloatingButtonProps extends ContextualFloatingButtonPublicVariantProps, Omit<LynxStyledElementProps, "flatten">, LynxPressableProps, LynxAccessibilityProps {
15
+ }
16
+ export declare const ContextualFloatingButton: React.ForwardRefExoticComponent<ContextualFloatingButtonProps & React.RefAttributes<unknown>>;
17
+ export {};
18
+ //# sourceMappingURL=ContextualFloatingButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextualFloatingButton.d.ts","sourceRoot":"","sources":["../../../src/components/ContextualFloatingButton/ContextualFloatingButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oCAAoC,EAC1C,MAAM,0DAA0D,CAAC;AAElE,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAIxC,OAAO,KAAK,EACV,sBAAsB,EAEtB,kBAAkB,EAClB,sBAAsB,EAGvB,MAAM,aAAa,CAAC;AASrB,KAAK,0CAA0C,GAAG,IAAI,CACpD,oCAAoC,EACpC,SAAS,CACV,CAAC;AAqHF;;;;;;;;GAQG;AACH,MAAM,WAAW,6BACf,SAAQ,0CAA0C,EAChD,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,EACvC,kBAAkB,EAClB,sBAAsB;CAAG;AAE7B,eAAO,MAAM,wBAAwB,+FAsEpC,CAAC"}
@@ -0,0 +1,113 @@
1
+ import { usePressTap } from "../../packages/lynx-react-headless/use-press-tap/lib/index.js";
2
+ import { useScaleFeedback } from "../../hooks/useScaleFeedback.js";
3
+ import { toArray } from "../../utils/children.js";
4
+ import { mergeProps } from "../../utils/merge-props.js";
5
+ import { createSlotRecipeContext } from "../../utils/create-slot-recipe-context.jsx";
6
+ import { IconRequired, IconSlotProvider, getIconSlotName } from "../Icon/Icon.jsx";
7
+ import { ProgressCircleRange, ProgressCircleRoot } from "../ProgressCircle/ProgressCircle.jsx";
8
+ import * as React from "@lynx-js/react";
9
+ import clsx from "clsx";
10
+ import { contextualFloatingButton } from "@seed-design/lynx-css/recipes/contextual-floating-button";
11
+ //#region src/components/ContextualFloatingButton/ContextualFloatingButton.tsx
12
+ var { ClassNamesProvider, useClassNames } = createSlotRecipeContext(contextualFloatingButton);
13
+ var ContextualFloatingButtonRoot = React.forwardRef((innerProps, ref) => {
14
+ const [variantProps, otherProps] = contextualFloatingButton.splitVariantProps(innerProps);
15
+ const classNames = contextualFloatingButton(variantProps);
16
+ const { children, className, ...nativeProps } = otherProps;
17
+ const iconSlotContextValue = React.useMemo(() => ({
18
+ classNames: {
19
+ icon: classNames.icon,
20
+ prefixIcon: classNames.prefixIcon
21
+ },
22
+ deps: [
23
+ variantProps.variant ?? null,
24
+ variantProps.layout ?? null,
25
+ variantProps.pressed ?? false,
26
+ variantProps.disabled ?? false,
27
+ variantProps.loading ?? false
28
+ ]
29
+ }), [
30
+ classNames.icon,
31
+ classNames.prefixIcon,
32
+ variantProps.variant,
33
+ variantProps.layout,
34
+ variantProps.pressed,
35
+ variantProps.disabled,
36
+ variantProps.loading
37
+ ]);
38
+ return <ClassNamesProvider value={classNames}>
39
+ <IconSlotProvider value={iconSlotContextValue}>
40
+ <view {...mergeProps(ref ? { ref } : {}, nativeProps)} className={clsx(classNames.root, className)}>
41
+ {children}
42
+ </view>
43
+ </IconSlotProvider>
44
+ </ClassNamesProvider>;
45
+ });
46
+ ContextualFloatingButtonRoot.displayName = "ContextualFloatingButtonRoot";
47
+ function ContextualFloatingButtonText({ children }) {
48
+ const classNames = useClassNames();
49
+ return <text className={classNames.text}>{children}</text>;
50
+ }
51
+ function ContextualFloatingButtonContent({ children, isIconOnly }) {
52
+ const classNames = useClassNames();
53
+ const prefixIconChildren = [];
54
+ const iconChildren = [];
55
+ const textChildren = [];
56
+ for (const child of toArray(children)) {
57
+ const slotName = getIconSlotName(child);
58
+ if (slotName === "prefixIcon") {
59
+ prefixIconChildren.push(child);
60
+ continue;
61
+ }
62
+ if (slotName === "icon") {
63
+ iconChildren.push(child);
64
+ continue;
65
+ }
66
+ textChildren.push(child);
67
+ }
68
+ return <view className={classNames.content}>
69
+ {isIconOnly ? <>{iconChildren}</> : <>
70
+ {prefixIconChildren}
71
+ {textChildren.length > 0 ? <ContextualFloatingButtonText>{textChildren}</ContextualFloatingButtonText> : null}
72
+ </>}
73
+ </view>;
74
+ }
75
+ function ContextualFloatingButtonLoadingIndicator() {
76
+ const classNames = useClassNames();
77
+ return <view className={classNames.loadingIndicator}>
78
+ <ProgressCircleRoot size="16" tone="inherit">
79
+ <ProgressCircleRange />
80
+ </ProgressCircleRoot>
81
+ </view>;
82
+ }
83
+ var ContextualFloatingButton = React.forwardRef((props, ref) => {
84
+ const [variantProps, otherProps] = contextualFloatingButton.splitVariantProps(props);
85
+ const { children, bindtap, "main-thread:bindtap": mainThreadBindtap, "accessibility-element": accessibilityElement = true, "accessibility-label": accessibilityLabel, "accessibility-role-description": accessibilityRoleDescription = "button", "accessibility-traits": accessibilityTraits, ...nativeProps } = otherProps;
86
+ const layout = variantProps.layout ?? "withText";
87
+ const disabled = variantProps.disabled ?? false;
88
+ const loading = variantProps.loading ?? false;
89
+ const isInteractive = !disabled && !loading;
90
+ if (process.env.NODE_ENV !== "production" && layout === "iconOnly" && accessibilityElement && !accessibilityLabel) console.warn("ContextualFloatingButton: `layout=\"iconOnly\"` requires `accessibility-label` for accessibility.");
91
+ const { pressed, bindtouchstart, bindtouchend, bindtouchcancel, ...pressTapHandlers } = usePressTap({
92
+ disabled: !isInteractive,
93
+ onTap: bindtap,
94
+ mainThreadOnTap: mainThreadBindtap
95
+ });
96
+ const { scaleFeedbackTriggerProps, scaleFeedbackTargetProps } = useScaleFeedback({
97
+ disabled: !isInteractive,
98
+ onTouchStart: bindtouchstart,
99
+ onTouchEnd: bindtouchend,
100
+ onTouchCancel: bindtouchcancel
101
+ });
102
+ return <IconRequired enabled={layout === "iconOnly"}>
103
+ <ContextualFloatingButtonRoot {...mergeProps({ ref }, scaleFeedbackTargetProps, scaleFeedbackTriggerProps, pressTapHandlers, nativeProps)} {...variantProps} pressed={pressed} accessibility-element={accessibilityElement} accessibility-label={accessibilityLabel} accessibility-role-description={accessibilityRoleDescription} accessibility-traits={accessibilityTraits ?? (disabled || loading ? "disabled" : void 0)} flatten={false}>
104
+ {loading ? <ContextualFloatingButtonLoadingIndicator /> : null}
105
+ <ContextualFloatingButtonContent isIconOnly={layout === "iconOnly"}>
106
+ {children}
107
+ </ContextualFloatingButtonContent>
108
+ </ContextualFloatingButtonRoot>
109
+ </IconRequired>;
110
+ });
111
+ ContextualFloatingButton.displayName = "ContextualFloatingButton";
112
+ //#endregion
113
+ export { ContextualFloatingButton };
@@ -0,0 +1,2 @@
1
+ export { ContextualFloatingButton, type ContextualFloatingButtonProps, } from './ContextualFloatingButton';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ContextualFloatingButton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,KAAK,6BAA6B,GACnC,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,87 @@
1
+ import { DialogBackdropProps as DialogPrimitiveBackdropProps, DialogCloseProps as DialogPrimitiveCloseProps, DialogContentProps as DialogPrimitiveContentProps, DialogRootProps as DialogPrimitiveRootProps, DialogTriggerProps as DialogPrimitiveTriggerProps, DialogViewProps as DialogPrimitiveViewProps } from '@lynx-js/lynx-ui-dialog';
2
+ import { ForwardRefExoticComponent, PropsWithoutRef, ReactElement, RefAttributes } from '@lynx-js/react';
3
+ import { DialogVariantProps } from '@seed-design/lynx-css/recipes/dialog';
4
+ import { LynxStyledElementProps } from '../../types';
5
+ import { StyleProps } from '../../utils/styled';
6
+ type DialogComponent<Props> = ((props: Props) => ReactElement) & {
7
+ displayName?: string;
8
+ };
9
+ type LynxForwardRefComponent<T, Props> = ForwardRefExoticComponent<PropsWithoutRef<Props> & RefAttributes<T>>;
10
+ export interface DialogRootProps extends DialogVariantProps, Omit<DialogPrimitiveRootProps, "show" | "defaultShow" | "onShowChange"> {
11
+ /**
12
+ * Whether the dialog is open (controlled mode).
13
+ * Internally mapped to `show` of `@lynx-js/lynx-ui-dialog`.
14
+ */
15
+ open?: boolean;
16
+ /**
17
+ * Whether the dialog is open by default (uncontrolled mode).
18
+ * Internally mapped to `defaultShow`.
19
+ * @defaultValue false
20
+ */
21
+ defaultOpen?: boolean;
22
+ /**
23
+ * Called when the dialog's open state is about to change.
24
+ * The Lynx headless implementation provides only the next boolean state.
25
+ */
26
+ onOpenChange?: (open: boolean) => void;
27
+ }
28
+ /**
29
+ * @platform Lynx — wraps `@lynx-js/lynx-ui-dialog`.
30
+ *
31
+ * Unlike the React Dialog primitive, Lynx does not support refs, `lazyMount`,
32
+ * `unmountOnExit`, focus management, title/description associations, Escape-key
33
+ * dismissal, `asChild`, or close-reason details. Use `forceMount` from the
34
+ * underlying Lynx dialog when content must remain mounted while closed.
35
+ */
36
+ export declare const DialogRoot: DialogComponent<DialogRootProps>;
37
+ export interface DialogTriggerProps extends DialogPrimitiveTriggerProps {
38
+ }
39
+ /**
40
+ * @platform Lynx — `asChild` and refs are unsupported.
41
+ */
42
+ export declare const DialogTrigger: DialogComponent<DialogTriggerProps>;
43
+ export interface DialogPositionerProps extends DialogPrimitiveViewProps {
44
+ }
45
+ /**
46
+ * @platform Lynx — maps to `DialogView`; refs are unsupported.
47
+ */
48
+ export declare const DialogPositioner: DialogComponent<DialogPositionerProps>;
49
+ export interface DialogBackdropProps extends DialogPrimitiveBackdropProps {
50
+ }
51
+ /**
52
+ * @platform Lynx — refs are unsupported. Native lifecycle handlers in
53
+ * `dialogBackdropProps` are reserved by the headless primitive and are omitted
54
+ * so they cannot replace its presence and dismissal handlers.
55
+ */
56
+ export declare const DialogBackdrop: DialogComponent<DialogBackdropProps>;
57
+ export interface DialogContentProps extends DialogPrimitiveContentProps {
58
+ }
59
+ /**
60
+ * @platform Lynx — refs are unsupported. Native lifecycle handlers in
61
+ * `dialogContentProps` are reserved by the headless primitive and are omitted
62
+ * so they cannot replace its presence handlers.
63
+ */
64
+ export declare const DialogContent: DialogComponent<DialogContentProps>;
65
+ export interface DialogHeaderProps extends StyleProps, LynxStyledElementProps {
66
+ }
67
+ export declare const DialogHeader: LynxForwardRefComponent<unknown, DialogHeaderProps>;
68
+ export interface DialogBodyProps extends StyleProps, LynxStyledElementProps {
69
+ }
70
+ export declare const DialogBody: LynxForwardRefComponent<unknown, DialogBodyProps>;
71
+ export interface DialogTitleProps extends StyleProps, LynxStyledElementProps {
72
+ }
73
+ export declare const DialogTitle: LynxForwardRefComponent<unknown, DialogTitleProps>;
74
+ export interface DialogDescriptionProps extends StyleProps, LynxStyledElementProps {
75
+ }
76
+ export declare const DialogDescription: LynxForwardRefComponent<unknown, DialogDescriptionProps>;
77
+ export interface DialogFooterProps extends StyleProps, LynxStyledElementProps {
78
+ }
79
+ export declare const DialogFooter: LynxForwardRefComponent<unknown, DialogFooterProps>;
80
+ export interface DialogActionProps extends DialogPrimitiveCloseProps {
81
+ }
82
+ /**
83
+ * @platform Lynx — maps to `DialogClose`; `asChild` and refs are unsupported.
84
+ */
85
+ export declare const DialogAction: DialogComponent<DialogActionProps>;
86
+ export {};
87
+ //# sourceMappingURL=Dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/components/Dialog/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,IAAI,4BAA4B,EACxD,KAAK,gBAAgB,IAAI,yBAAyB,EAClD,KAAK,kBAAkB,IAAI,2BAA2B,EACtD,KAAK,eAAe,IAAI,wBAAwB,EAChD,KAAK,kBAAkB,IAAI,2BAA2B,EACtD,KAAK,eAAe,IAAI,wBAAwB,EACjD,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,aAAa,EACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAU,KAAK,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAGvF,OAAO,KAAK,EAAE,sBAAsB,EAA4B,MAAM,aAAa,CAAC;AACpF,OAAO,EAAiB,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEpE,KAAK,eAAe,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,YAAY,CAAC,GAAG;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AACF,KAAK,uBAAuB,CAAC,CAAC,EAAE,KAAK,IAAI,yBAAyB,CAChE,eAAe,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAC1C,CAAC;AA0CF,MAAM,WAAW,eACf,SAAQ,kBAAkB,EACxB,IAAI,CAAC,wBAAwB,EAAE,MAAM,GAAG,aAAa,GAAG,cAAc,CAAC;IACzE;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,EAmBjB,eAAe,CAAC,eAAe,CAAC,CAAC;AAOvC,MAAM,WAAW,kBAAmB,SAAQ,2BAA2B;CAAG;AAE1E;;GAEG;AACH,eAAO,MAAM,aAAa,EASpB,eAAe,CAAC,kBAAkB,CAAC,CAAC;AAO1C,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;CAAG;AAE1E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAcvB,eAAe,CAAC,qBAAqB,CAAC,CAAC;AAO7C,MAAM,WAAW,mBAAoB,SAAQ,4BAA4B;CAAG;AAE5E;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAerB,eAAe,CAAC,mBAAmB,CAAC,CAAC;AAO3C,MAAM,WAAW,kBAAmB,SAAQ,2BAA2B;CAAG;AAE1E;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAepB,eAAe,CAAC,kBAAkB,CAAC,CAAC;AAO1C,MAAM,WAAW,iBAAkB,SAAQ,UAAU,EAAE,sBAAsB;CAAG;AAEhF,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,CAkB3E,CAAC;AAGH,MAAM,WAAW,eAAgB,SAAQ,UAAU,EAAE,sBAAsB;CAAG;AAE9E,eAAO,MAAM,UAAU,EAAE,uBAAuB,CAAC,OAAO,EAAE,eAAe,CAmBvE,CAAC;AAGH,MAAM,WAAW,gBAAiB,SAAQ,UAAU,EAAE,sBAAsB;CAAG;AAE/E,eAAO,MAAM,WAAW,EAAE,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,CAkBzE,CAAC;AAGH,MAAM,WAAW,sBAAuB,SAAQ,UAAU,EAAE,sBAAsB;CAAG;AAErF,eAAO,MAAM,iBAAiB,EAAE,uBAAuB,CAAC,OAAO,EAAE,sBAAsB,CAgBnF,CAAC;AAGL,MAAM,WAAW,iBAAkB,SAAQ,UAAU,EAAE,sBAAsB;CAAG;AAEhF,eAAO,MAAM,YAAY,EAAE,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,CAkB3E,CAAC;AAOH,MAAM,WAAW,iBAAkB,SAAQ,yBAAyB;CAAG;AAEvE;;GAEG;AACH,eAAO,MAAM,YAAY,EAcnB,eAAe,CAAC,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,147 @@
1
+ import { createSlotRecipeContext } from "../../utils/create-slot-recipe-context.jsx";
2
+ import { useStyleProps } from "../../utils/styled.js";
3
+ import { forwardRef } from "@lynx-js/react";
4
+ import clsx from "clsx";
5
+ import { DialogBackdrop, DialogClose, DialogContent, DialogRoot, DialogTrigger, DialogView } from "@lynx-js/lynx-ui-dialog";
6
+ import { dialog } from "@seed-design/lynx-css/recipes/dialog";
7
+ //#region src/components/Dialog/Dialog.tsx
8
+ var { ClassNamesProvider, PropsProvider, useClassNames, useProps } = createSlotRecipeContext(dialog);
9
+ function omitHeadlessLifecycleHandlers(props) {
10
+ if (!props) return props;
11
+ const { bindanimationstart: _bindanimationstart, bindanimationend: _bindanimationend, bindanimationcancel: _bindanimationcancel, bindtransitionstart: _bindtransitionstart, bindtransitionend: _bindtransitionend, bindtap: _bindtap, ...nativeProps } = props;
12
+ return nativeProps;
13
+ }
14
+ function useDialogTransition(transition) {
15
+ return useProps()?.skipAnimation === true ? false : transition ?? true;
16
+ }
17
+ /**
18
+ * @platform Lynx — wraps `@lynx-js/lynx-ui-dialog`.
19
+ *
20
+ * Unlike the React Dialog primitive, Lynx does not support refs, `lazyMount`,
21
+ * `unmountOnExit`, focus management, title/description associations, Escape-key
22
+ * dismissal, `asChild`, or close-reason details. Use `forceMount` from the
23
+ * underlying Lynx dialog when content must remain mounted while closed.
24
+ */
25
+ var DialogRoot$1 = forwardRef((props, _ref) => {
26
+ const [variantProps, restProps] = dialog.splitVariantProps(props);
27
+ const { children, open, defaultOpen, onOpenChange, ...nativeProps } = restProps;
28
+ const classNames = dialog(variantProps);
29
+ return <ClassNamesProvider value={classNames}>
30
+ <PropsProvider value={variantProps}>
31
+ <DialogRoot {...nativeProps} show={open} defaultShow={defaultOpen} onShowChange={onOpenChange}>
32
+ {children}
33
+ </DialogRoot>
34
+ </PropsProvider>
35
+ </ClassNamesProvider>;
36
+ });
37
+ DialogRoot$1.displayName = "DialogRoot";
38
+ /**
39
+ * @platform Lynx — `asChild` and refs are unsupported.
40
+ */
41
+ var DialogTrigger$1 = forwardRef((props, _ref) => {
42
+ const { children, transition, ...nativeProps } = props;
43
+ const resolvedTransition = useDialogTransition(transition);
44
+ return <DialogTrigger {...nativeProps} transition={resolvedTransition}>
45
+ {children}
46
+ </DialogTrigger>;
47
+ });
48
+ DialogTrigger$1.displayName = "DialogTrigger";
49
+ /**
50
+ * @platform Lynx — maps to `DialogView`; refs are unsupported.
51
+ */
52
+ var DialogPositioner = forwardRef((props, _ref) => {
53
+ const { children, className, transition, ...nativeProps } = props;
54
+ const classNames = useClassNames();
55
+ const resolvedTransition = useDialogTransition(transition);
56
+ return <DialogView {...nativeProps} className={clsx(classNames.positioner, className)} transition={resolvedTransition}>
57
+ {children}
58
+ </DialogView>;
59
+ });
60
+ DialogPositioner.displayName = "DialogPositioner";
61
+ /**
62
+ * @platform Lynx — refs are unsupported. Native lifecycle handlers in
63
+ * `dialogBackdropProps` are reserved by the headless primitive and are omitted
64
+ * so they cannot replace its presence and dismissal handlers.
65
+ */
66
+ var DialogBackdrop$1 = forwardRef((props, _ref) => {
67
+ const { children, className, transition, dialogBackdropProps, ...nativeProps } = props;
68
+ const classNames = useClassNames();
69
+ const resolvedTransition = useDialogTransition(transition);
70
+ return <DialogBackdrop {...nativeProps} className={clsx(classNames.backdrop, className)} transition={resolvedTransition} dialogBackdropProps={omitHeadlessLifecycleHandlers(dialogBackdropProps)}>
71
+ {children}
72
+ </DialogBackdrop>;
73
+ });
74
+ DialogBackdrop$1.displayName = "DialogBackdrop";
75
+ /**
76
+ * @platform Lynx — refs are unsupported. Native lifecycle handlers in
77
+ * `dialogContentProps` are reserved by the headless primitive and are omitted
78
+ * so they cannot replace its presence handlers.
79
+ */
80
+ var DialogContent$1 = forwardRef((props, _ref) => {
81
+ const { children, className, transition, dialogContentProps, ...nativeProps } = props;
82
+ const classNames = useClassNames();
83
+ const resolvedTransition = useDialogTransition(transition);
84
+ return <DialogContent {...nativeProps} className={clsx(classNames.content, className)} transition={resolvedTransition} dialogContentProps={omitHeadlessLifecycleHandlers(dialogContentProps)}>
85
+ {children}
86
+ </DialogContent>;
87
+ });
88
+ DialogContent$1.displayName = "DialogContent";
89
+ var DialogHeader = forwardRef((props, ref) => {
90
+ const { style, restProps } = useStyleProps(props);
91
+ const { children, className, ...nativeProps } = restProps;
92
+ const classNames = useClassNames();
93
+ return <view {...ref ? { ref } : {}} {...nativeProps} className={clsx(classNames.header, className)} style={style}>
94
+ {children}
95
+ </view>;
96
+ });
97
+ DialogHeader.displayName = "DialogHeader";
98
+ var DialogBody = forwardRef((props, ref) => {
99
+ const { style, restProps } = useStyleProps(props);
100
+ const { children, className, ...nativeProps } = restProps;
101
+ const classNames = useClassNames();
102
+ return <scroll-view {...ref ? { ref } : {}} {...nativeProps} scroll-y className={clsx(classNames.body, className)} style={style}>
103
+ {children}
104
+ </scroll-view>;
105
+ });
106
+ DialogBody.displayName = "DialogBody";
107
+ var DialogTitle = forwardRef((props, ref) => {
108
+ const { style, restProps } = useStyleProps(props);
109
+ const { children, className, ...nativeProps } = restProps;
110
+ const classNames = useClassNames();
111
+ return <text {...ref ? { ref } : {}} {...nativeProps} className={clsx(classNames.title, className)} style={style}>
112
+ {children}
113
+ </text>;
114
+ });
115
+ DialogTitle.displayName = "DialogTitle";
116
+ var DialogDescription = forwardRef((props, ref) => {
117
+ const { style, restProps } = useStyleProps(props);
118
+ const { children, className, ...nativeProps } = restProps;
119
+ const classNames = useClassNames();
120
+ return <text {...ref ? { ref } : {}} {...nativeProps} className={clsx(classNames.description, className)} style={style}>
121
+ {children}
122
+ </text>;
123
+ });
124
+ DialogDescription.displayName = "DialogDescription";
125
+ var DialogFooter = forwardRef((props, ref) => {
126
+ const { style, restProps } = useStyleProps(props);
127
+ const { children, className, ...nativeProps } = restProps;
128
+ const classNames = useClassNames();
129
+ return <view {...ref ? { ref } : {}} {...nativeProps} className={clsx(classNames.footer, className)} style={style}>
130
+ {children}
131
+ </view>;
132
+ });
133
+ DialogFooter.displayName = "DialogFooter";
134
+ /**
135
+ * @platform Lynx — maps to `DialogClose`; `asChild` and refs are unsupported.
136
+ */
137
+ var DialogAction = forwardRef((props, _ref) => {
138
+ const { children, className, transition, ...nativeProps } = props;
139
+ const classNames = useClassNames();
140
+ const resolvedTransition = useDialogTransition(transition);
141
+ return <DialogClose {...nativeProps} className={clsx(classNames.action, className)} transition={resolvedTransition}>
142
+ {children}
143
+ </DialogClose>;
144
+ });
145
+ DialogAction.displayName = "DialogAction";
146
+ //#endregion
147
+ export { DialogAction, DialogBackdrop$1 as DialogBackdrop, DialogBody, DialogContent$1 as DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPositioner, DialogRoot$1 as DialogRoot, DialogTitle, DialogTrigger$1 as DialogTrigger };
@@ -0,0 +1,2 @@
1
+ export { DialogAction as Action, DialogBackdrop as Backdrop, DialogBody as Body, DialogContent as Content, DialogDescription as Description, DialogFooter as Footer, DialogHeader as Header, DialogPositioner as Positioner, DialogRoot as Root, DialogTitle as Title, DialogTrigger as Trigger, type DialogActionProps as ActionProps, type DialogBackdropProps as BackdropProps, type DialogBodyProps as BodyProps, type DialogContentProps as ContentProps, type DialogDescriptionProps as DescriptionProps, type DialogFooterProps as FooterProps, type DialogHeaderProps as HeaderProps, type DialogPositionerProps as PositionerProps, type DialogRootProps as RootProps, type DialogTitleProps as TitleProps, type DialogTriggerProps as TriggerProps, } from './Dialog';
2
+ //# sourceMappingURL=Dialog.namespace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.namespace.d.ts","sourceRoot":"","sources":["../../../src/components/Dialog/Dialog.namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,IAAI,MAAM,EACtB,cAAc,IAAI,QAAQ,EAC1B,UAAU,IAAI,IAAI,EAClB,aAAa,IAAI,OAAO,EACxB,iBAAiB,IAAI,WAAW,EAChC,YAAY,IAAI,MAAM,EACtB,YAAY,IAAI,MAAM,EACtB,gBAAgB,IAAI,UAAU,EAC9B,UAAU,IAAI,IAAI,EAClB,WAAW,IAAI,KAAK,EACpB,aAAa,IAAI,OAAO,EACxB,KAAK,iBAAiB,IAAI,WAAW,EACrC,KAAK,mBAAmB,IAAI,aAAa,EACzC,KAAK,eAAe,IAAI,SAAS,EACjC,KAAK,kBAAkB,IAAI,YAAY,EACvC,KAAK,sBAAsB,IAAI,gBAAgB,EAC/C,KAAK,iBAAiB,IAAI,WAAW,EACrC,KAAK,iBAAiB,IAAI,WAAW,EACrC,KAAK,qBAAqB,IAAI,eAAe,EAC7C,KAAK,eAAe,IAAI,SAAS,EACjC,KAAK,gBAAgB,IAAI,UAAU,EACnC,KAAK,kBAAkB,IAAI,YAAY,GACxC,MAAM,UAAU,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.js";
2
+ import { DialogAction, DialogBackdrop, DialogBody, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogPositioner, DialogRoot, DialogTitle, DialogTrigger } from "./Dialog.jsx";
3
+ //#region src/components/Dialog/Dialog.namespace.ts
4
+ var Dialog_namespace_exports = /* @__PURE__ */ __exportAll({
5
+ Action: () => DialogAction,
6
+ Backdrop: () => DialogBackdrop,
7
+ Body: () => DialogBody,
8
+ Content: () => DialogContent,
9
+ Description: () => DialogDescription,
10
+ Footer: () => DialogFooter,
11
+ Header: () => DialogHeader,
12
+ Positioner: () => DialogPositioner,
13
+ Root: () => DialogRoot,
14
+ Title: () => DialogTitle,
15
+ Trigger: () => DialogTrigger
16
+ });
17
+ //#endregion
18
+ export { Dialog_namespace_exports };
@@ -0,0 +1,3 @@
1
+ export { DialogAction, type DialogActionProps, DialogBackdrop, type DialogBackdropProps, DialogBody, type DialogBodyProps, DialogContent, type DialogContentProps, DialogDescription, type DialogDescriptionProps, DialogFooter, type DialogFooterProps, DialogHeader, type DialogHeaderProps, DialogPositioner, type DialogPositionerProps, DialogRoot, type DialogRootProps, DialogTitle, type DialogTitleProps, DialogTrigger, type DialogTriggerProps, } from './Dialog';
2
+ export * as Dialog from './Dialog.namespace';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Dialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,EACtB,cAAc,EACd,KAAK,mBAAmB,EACxB,UAAU,EACV,KAAK,eAAe,EACpB,aAAa,EACb,KAAK,kBAAkB,EACvB,iBAAiB,EACjB,KAAK,sBAAsB,EAC3B,YAAY,EACZ,KAAK,iBAAiB,EACtB,YAAY,EACZ,KAAK,iBAAiB,EACtB,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,UAAU,EACV,KAAK,eAAe,EACpB,WAAW,EACX,KAAK,gBAAgB,EACrB,aAAa,EACb,KAAK,kBAAkB,GACxB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { FloatingActionButtonVariantProps } from '@seed-design/lynx-css/recipes/floating-action-button';
2
+ import { LynxAccessibilityProps, LynxPressableProps, LynxStyledElementProps } from '../../types';
3
+ import { InternalIconProps } from '../Icon/Icon';
4
+ import * as React from "@lynx-js/react";
5
+ type FloatingActionButtonPublicVariantProps = Omit<FloatingActionButtonVariantProps, "pressed" | "transitionEnabled">;
6
+ /**
7
+ * @platform Lynx
8
+ *
9
+ * Web DOM button props, `asChild`, `aria-*`, and `onClick` are not supported.
10
+ * Use native `bindtap` / `main-thread:bindtap` and `accessibility-*` props instead.
11
+ */
12
+ export interface FloatingActionButtonRootProps extends FloatingActionButtonPublicVariantProps, LynxStyledElementProps, LynxPressableProps, LynxAccessibilityProps {
13
+ disabled?: boolean;
14
+ }
15
+ export declare const FloatingActionButtonRoot: React.ForwardRefExoticComponent<FloatingActionButtonRootProps & React.RefAttributes<unknown>>;
16
+ export interface FloatingActionButtonIconProps extends Omit<InternalIconProps, "deps" | "disableDefaultResize"> {
17
+ }
18
+ export declare const FloatingActionButtonIcon: React.ForwardRefExoticComponent<FloatingActionButtonIconProps & React.RefAttributes<unknown>>;
19
+ export interface FloatingActionButtonLabelProps extends LynxStyledElementProps {
20
+ }
21
+ export declare const FloatingActionButtonLabel: React.ForwardRefExoticComponent<FloatingActionButtonLabelProps & React.RefAttributes<unknown>>;
22
+ export {};
23
+ //# sourceMappingURL=FloatingActionButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FloatingActionButton.d.ts","sourceRoot":"","sources":["../../../src/components/FloatingActionButton/FloatingActionButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAGxC,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,sDAAsD,CAAC;AAI9D,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EAMvB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAKpE,KAAK,sCAAsC,GAAG,IAAI,CAChD,gCAAgC,EAChC,SAAS,GAAG,mBAAmB,CAChC,CAAC;AAiDF;;;;;GAKG;AACH,MAAM,WAAW,6BACf,SAAQ,sCAAsC,EAC5C,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,wBAAwB,+FA0CpC,CAAC;AAKF,MAAM,WAAW,6BACf,SAAQ,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,sBAAsB,CAAC;CAAG;AAIrE,eAAO,MAAM,wBAAwB,+FAepC,CAAC;AAKF,MAAM,WAAW,8BAA+B,SAAQ,sBAAsB;CAAG;AAEjF,eAAO,MAAM,yBAAyB,gGAsCrC,CAAC"}