fluentglass 0.2.6

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 (414) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +169 -0
  3. package/lib/commonjs/assets/fonts/Inter-Black.ttf +0 -0
  4. package/lib/commonjs/assets/fonts/Inter-Bold.ttf +0 -0
  5. package/lib/commonjs/assets/fonts/Inter-ExtraBold.ttf +0 -0
  6. package/lib/commonjs/assets/fonts/Inter-Medium.ttf +0 -0
  7. package/lib/commonjs/assets/fonts/Inter-Regular.ttf +0 -0
  8. package/lib/commonjs/assets/fonts/Inter-SemiBold.ttf +0 -0
  9. package/lib/commonjs/components/FluentGlass.js +94 -0
  10. package/lib/commonjs/components/FluentGlass.js.map +1 -0
  11. package/lib/commonjs/components/FluentGlassAlert.js +126 -0
  12. package/lib/commonjs/components/FluentGlassAlert.js.map +1 -0
  13. package/lib/commonjs/components/FluentGlassBadge.js +124 -0
  14. package/lib/commonjs/components/FluentGlassBadge.js.map +1 -0
  15. package/lib/commonjs/components/FluentGlassBarChart.js +287 -0
  16. package/lib/commonjs/components/FluentGlassBarChart.js.map +1 -0
  17. package/lib/commonjs/components/FluentGlassBreadcrumb.js +155 -0
  18. package/lib/commonjs/components/FluentGlassBreadcrumb.js.map +1 -0
  19. package/lib/commonjs/components/FluentGlassButton.js +175 -0
  20. package/lib/commonjs/components/FluentGlassButton.js.map +1 -0
  21. package/lib/commonjs/components/FluentGlassCalendarWidget.js +73 -0
  22. package/lib/commonjs/components/FluentGlassCalendarWidget.js.map +1 -0
  23. package/lib/commonjs/components/FluentGlassCard.js +195 -0
  24. package/lib/commonjs/components/FluentGlassCard.js.map +1 -0
  25. package/lib/commonjs/components/FluentGlassCheckbox.js +121 -0
  26. package/lib/commonjs/components/FluentGlassCheckbox.js.map +1 -0
  27. package/lib/commonjs/components/FluentGlassClockWidget.js +80 -0
  28. package/lib/commonjs/components/FluentGlassClockWidget.js.map +1 -0
  29. package/lib/commonjs/components/FluentGlassCodeBlock.js +239 -0
  30. package/lib/commonjs/components/FluentGlassCodeBlock.js.map +1 -0
  31. package/lib/commonjs/components/FluentGlassContainer.js +52 -0
  32. package/lib/commonjs/components/FluentGlassContainer.js.map +1 -0
  33. package/lib/commonjs/components/FluentGlassCrossfade.js +118 -0
  34. package/lib/commonjs/components/FluentGlassCrossfade.js.map +1 -0
  35. package/lib/commonjs/components/FluentGlassDateInput.js +176 -0
  36. package/lib/commonjs/components/FluentGlassDateInput.js.map +1 -0
  37. package/lib/commonjs/components/FluentGlassDatePicker.js +271 -0
  38. package/lib/commonjs/components/FluentGlassDatePicker.js.map +1 -0
  39. package/lib/commonjs/components/FluentGlassDialog.js +169 -0
  40. package/lib/commonjs/components/FluentGlassDialog.js.map +1 -0
  41. package/lib/commonjs/components/FluentGlassDock.js +187 -0
  42. package/lib/commonjs/components/FluentGlassDock.js.map +1 -0
  43. package/lib/commonjs/components/FluentGlassDropdown.js +349 -0
  44. package/lib/commonjs/components/FluentGlassDropdown.js.map +1 -0
  45. package/lib/commonjs/components/FluentGlassEmailInput.js +43 -0
  46. package/lib/commonjs/components/FluentGlassEmailInput.js.map +1 -0
  47. package/lib/commonjs/components/FluentGlassInput.js +83 -0
  48. package/lib/commonjs/components/FluentGlassInput.js.map +1 -0
  49. package/lib/commonjs/components/FluentGlassLabeledInput.js +64 -0
  50. package/lib/commonjs/components/FluentGlassLabeledInput.js.map +1 -0
  51. package/lib/commonjs/components/FluentGlassLayout.js +106 -0
  52. package/lib/commonjs/components/FluentGlassLayout.js.map +1 -0
  53. package/lib/commonjs/components/FluentGlassPasswordInput.js +60 -0
  54. package/lib/commonjs/components/FluentGlassPasswordInput.js.map +1 -0
  55. package/lib/commonjs/components/FluentGlassPopover.js +75 -0
  56. package/lib/commonjs/components/FluentGlassPopover.js.map +1 -0
  57. package/lib/commonjs/components/FluentGlassResponsiveRow.js +74 -0
  58. package/lib/commonjs/components/FluentGlassResponsiveRow.js.map +1 -0
  59. package/lib/commonjs/components/FluentGlassScrollArea.js +101 -0
  60. package/lib/commonjs/components/FluentGlassScrollArea.js.map +1 -0
  61. package/lib/commonjs/components/FluentGlassSegmentedControl.js +126 -0
  62. package/lib/commonjs/components/FluentGlassSegmentedControl.js.map +1 -0
  63. package/lib/commonjs/components/FluentGlassSelect.js +155 -0
  64. package/lib/commonjs/components/FluentGlassSelect.js.map +1 -0
  65. package/lib/commonjs/components/FluentGlassSeparator.js +62 -0
  66. package/lib/commonjs/components/FluentGlassSeparator.js.map +1 -0
  67. package/lib/commonjs/components/FluentGlassSheet.js +189 -0
  68. package/lib/commonjs/components/FluentGlassSheet.js.map +1 -0
  69. package/lib/commonjs/components/FluentGlassSidebar.js +358 -0
  70. package/lib/commonjs/components/FluentGlassSidebar.js.map +1 -0
  71. package/lib/commonjs/components/FluentGlassSimpleCard.js +56 -0
  72. package/lib/commonjs/components/FluentGlassSimpleCard.js.map +1 -0
  73. package/lib/commonjs/components/FluentGlassSkeleton.js +52 -0
  74. package/lib/commonjs/components/FluentGlassSkeleton.js.map +1 -0
  75. package/lib/commonjs/components/FluentGlassSlider.js +197 -0
  76. package/lib/commonjs/components/FluentGlassSlider.js.map +1 -0
  77. package/lib/commonjs/components/FluentGlassStatWidget.js +133 -0
  78. package/lib/commonjs/components/FluentGlassStatWidget.js.map +1 -0
  79. package/lib/commonjs/components/FluentGlassStatusIndicator.js +89 -0
  80. package/lib/commonjs/components/FluentGlassStatusIndicator.js.map +1 -0
  81. package/lib/commonjs/components/FluentGlassSwitch.js +126 -0
  82. package/lib/commonjs/components/FluentGlassSwitch.js.map +1 -0
  83. package/lib/commonjs/components/FluentGlassTable.js +163 -0
  84. package/lib/commonjs/components/FluentGlassTable.js.map +1 -0
  85. package/lib/commonjs/components/FluentGlassTag.js +109 -0
  86. package/lib/commonjs/components/FluentGlassTag.js.map +1 -0
  87. package/lib/commonjs/components/FluentGlassTextInput.js +90 -0
  88. package/lib/commonjs/components/FluentGlassTextInput.js.map +1 -0
  89. package/lib/commonjs/components/FluentGlassTimeline.js +334 -0
  90. package/lib/commonjs/components/FluentGlassTimeline.js.map +1 -0
  91. package/lib/commonjs/components/FluentGlassWeatherWidget.js +72 -0
  92. package/lib/commonjs/components/FluentGlassWeatherWidget.js.map +1 -0
  93. package/lib/commonjs/components/index.js +308 -0
  94. package/lib/commonjs/components/index.js.map +1 -0
  95. package/lib/commonjs/fonts.js +33 -0
  96. package/lib/commonjs/fonts.js.map +1 -0
  97. package/lib/commonjs/hooks/useBreakpoint.js +57 -0
  98. package/lib/commonjs/hooks/useBreakpoint.js.map +1 -0
  99. package/lib/commonjs/index.js +462 -0
  100. package/lib/commonjs/index.js.map +1 -0
  101. package/lib/commonjs/package.json +1 -0
  102. package/lib/commonjs/theme/FluentGlassProvider.js +84 -0
  103. package/lib/commonjs/theme/FluentGlassProvider.js.map +1 -0
  104. package/lib/commonjs/theme/defaultTheme.js +55 -0
  105. package/lib/commonjs/theme/defaultTheme.js.map +1 -0
  106. package/lib/commonjs/theme/resolvers.js +118 -0
  107. package/lib/commonjs/theme/resolvers.js.map +1 -0
  108. package/lib/commonjs/theme/tokens.js +239 -0
  109. package/lib/commonjs/theme/tokens.js.map +1 -0
  110. package/lib/commonjs/theme/typography.js +50 -0
  111. package/lib/commonjs/theme/typography.js.map +1 -0
  112. package/lib/commonjs/theme/useTheme.js +22 -0
  113. package/lib/commonjs/theme/useTheme.js.map +1 -0
  114. package/lib/commonjs/types/components.js +6 -0
  115. package/lib/commonjs/types/components.js.map +1 -0
  116. package/lib/commonjs/types/theme.js +6 -0
  117. package/lib/commonjs/types/theme.js.map +1 -0
  118. package/lib/commonjs/utils/colors.js +59 -0
  119. package/lib/commonjs/utils/colors.js.map +1 -0
  120. package/lib/commonjs/utils/responsive.js +126 -0
  121. package/lib/commonjs/utils/responsive.js.map +1 -0
  122. package/lib/module/assets/fonts/Inter-Black.ttf +0 -0
  123. package/lib/module/assets/fonts/Inter-Bold.ttf +0 -0
  124. package/lib/module/assets/fonts/Inter-ExtraBold.ttf +0 -0
  125. package/lib/module/assets/fonts/Inter-Medium.ttf +0 -0
  126. package/lib/module/assets/fonts/Inter-Regular.ttf +0 -0
  127. package/lib/module/assets/fonts/Inter-SemiBold.ttf +0 -0
  128. package/lib/module/components/FluentGlass.js +89 -0
  129. package/lib/module/components/FluentGlass.js.map +1 -0
  130. package/lib/module/components/FluentGlassAlert.js +121 -0
  131. package/lib/module/components/FluentGlassAlert.js.map +1 -0
  132. package/lib/module/components/FluentGlassBadge.js +119 -0
  133. package/lib/module/components/FluentGlassBadge.js.map +1 -0
  134. package/lib/module/components/FluentGlassBarChart.js +281 -0
  135. package/lib/module/components/FluentGlassBarChart.js.map +1 -0
  136. package/lib/module/components/FluentGlassBreadcrumb.js +150 -0
  137. package/lib/module/components/FluentGlassBreadcrumb.js.map +1 -0
  138. package/lib/module/components/FluentGlassButton.js +169 -0
  139. package/lib/module/components/FluentGlassButton.js.map +1 -0
  140. package/lib/module/components/FluentGlassCalendarWidget.js +68 -0
  141. package/lib/module/components/FluentGlassCalendarWidget.js.map +1 -0
  142. package/lib/module/components/FluentGlassCard.js +190 -0
  143. package/lib/module/components/FluentGlassCard.js.map +1 -0
  144. package/lib/module/components/FluentGlassCheckbox.js +115 -0
  145. package/lib/module/components/FluentGlassCheckbox.js.map +1 -0
  146. package/lib/module/components/FluentGlassClockWidget.js +74 -0
  147. package/lib/module/components/FluentGlassClockWidget.js.map +1 -0
  148. package/lib/module/components/FluentGlassCodeBlock.js +233 -0
  149. package/lib/module/components/FluentGlassCodeBlock.js.map +1 -0
  150. package/lib/module/components/FluentGlassContainer.js +47 -0
  151. package/lib/module/components/FluentGlassContainer.js.map +1 -0
  152. package/lib/module/components/FluentGlassCrossfade.js +112 -0
  153. package/lib/module/components/FluentGlassCrossfade.js.map +1 -0
  154. package/lib/module/components/FluentGlassDateInput.js +170 -0
  155. package/lib/module/components/FluentGlassDateInput.js.map +1 -0
  156. package/lib/module/components/FluentGlassDatePicker.js +265 -0
  157. package/lib/module/components/FluentGlassDatePicker.js.map +1 -0
  158. package/lib/module/components/FluentGlassDialog.js +163 -0
  159. package/lib/module/components/FluentGlassDialog.js.map +1 -0
  160. package/lib/module/components/FluentGlassDock.js +181 -0
  161. package/lib/module/components/FluentGlassDock.js.map +1 -0
  162. package/lib/module/components/FluentGlassDropdown.js +343 -0
  163. package/lib/module/components/FluentGlassDropdown.js.map +1 -0
  164. package/lib/module/components/FluentGlassEmailInput.js +38 -0
  165. package/lib/module/components/FluentGlassEmailInput.js.map +1 -0
  166. package/lib/module/components/FluentGlassInput.js +78 -0
  167. package/lib/module/components/FluentGlassInput.js.map +1 -0
  168. package/lib/module/components/FluentGlassLabeledInput.js +59 -0
  169. package/lib/module/components/FluentGlassLabeledInput.js.map +1 -0
  170. package/lib/module/components/FluentGlassLayout.js +101 -0
  171. package/lib/module/components/FluentGlassLayout.js.map +1 -0
  172. package/lib/module/components/FluentGlassPasswordInput.js +54 -0
  173. package/lib/module/components/FluentGlassPasswordInput.js.map +1 -0
  174. package/lib/module/components/FluentGlassPopover.js +70 -0
  175. package/lib/module/components/FluentGlassPopover.js.map +1 -0
  176. package/lib/module/components/FluentGlassResponsiveRow.js +71 -0
  177. package/lib/module/components/FluentGlassResponsiveRow.js.map +1 -0
  178. package/lib/module/components/FluentGlassScrollArea.js +95 -0
  179. package/lib/module/components/FluentGlassScrollArea.js.map +1 -0
  180. package/lib/module/components/FluentGlassSegmentedControl.js +120 -0
  181. package/lib/module/components/FluentGlassSegmentedControl.js.map +1 -0
  182. package/lib/module/components/FluentGlassSelect.js +149 -0
  183. package/lib/module/components/FluentGlassSelect.js.map +1 -0
  184. package/lib/module/components/FluentGlassSeparator.js +57 -0
  185. package/lib/module/components/FluentGlassSeparator.js.map +1 -0
  186. package/lib/module/components/FluentGlassSheet.js +183 -0
  187. package/lib/module/components/FluentGlassSheet.js.map +1 -0
  188. package/lib/module/components/FluentGlassSidebar.js +351 -0
  189. package/lib/module/components/FluentGlassSidebar.js.map +1 -0
  190. package/lib/module/components/FluentGlassSimpleCard.js +51 -0
  191. package/lib/module/components/FluentGlassSimpleCard.js.map +1 -0
  192. package/lib/module/components/FluentGlassSkeleton.js +46 -0
  193. package/lib/module/components/FluentGlassSkeleton.js.map +1 -0
  194. package/lib/module/components/FluentGlassSlider.js +191 -0
  195. package/lib/module/components/FluentGlassSlider.js.map +1 -0
  196. package/lib/module/components/FluentGlassStatWidget.js +128 -0
  197. package/lib/module/components/FluentGlassStatWidget.js.map +1 -0
  198. package/lib/module/components/FluentGlassStatusIndicator.js +84 -0
  199. package/lib/module/components/FluentGlassStatusIndicator.js.map +1 -0
  200. package/lib/module/components/FluentGlassSwitch.js +122 -0
  201. package/lib/module/components/FluentGlassSwitch.js.map +1 -0
  202. package/lib/module/components/FluentGlassTable.js +158 -0
  203. package/lib/module/components/FluentGlassTable.js.map +1 -0
  204. package/lib/module/components/FluentGlassTag.js +103 -0
  205. package/lib/module/components/FluentGlassTag.js.map +1 -0
  206. package/lib/module/components/FluentGlassTextInput.js +85 -0
  207. package/lib/module/components/FluentGlassTextInput.js.map +1 -0
  208. package/lib/module/components/FluentGlassTimeline.js +327 -0
  209. package/lib/module/components/FluentGlassTimeline.js.map +1 -0
  210. package/lib/module/components/FluentGlassWeatherWidget.js +67 -0
  211. package/lib/module/components/FluentGlassWeatherWidget.js.map +1 -0
  212. package/lib/module/components/index.js +45 -0
  213. package/lib/module/components/index.js.map +1 -0
  214. package/lib/module/fonts.js +26 -0
  215. package/lib/module/fonts.js.map +1 -0
  216. package/lib/module/hooks/useBreakpoint.js +54 -0
  217. package/lib/module/hooks/useBreakpoint.js.map +1 -0
  218. package/lib/module/index.js +30 -0
  219. package/lib/module/index.js.map +1 -0
  220. package/lib/module/theme/FluentGlassProvider.js +77 -0
  221. package/lib/module/theme/FluentGlassProvider.js.map +1 -0
  222. package/lib/module/theme/defaultTheme.js +51 -0
  223. package/lib/module/theme/defaultTheme.js.map +1 -0
  224. package/lib/module/theme/resolvers.js +110 -0
  225. package/lib/module/theme/resolvers.js.map +1 -0
  226. package/lib/module/theme/tokens.js +235 -0
  227. package/lib/module/theme/tokens.js.map +1 -0
  228. package/lib/module/theme/typography.js +45 -0
  229. package/lib/module/theme/typography.js.map +1 -0
  230. package/lib/module/theme/useTheme.js +18 -0
  231. package/lib/module/theme/useTheme.js.map +1 -0
  232. package/lib/module/types/components.js +4 -0
  233. package/lib/module/types/components.js.map +1 -0
  234. package/lib/module/types/theme.js +4 -0
  235. package/lib/module/types/theme.js.map +1 -0
  236. package/lib/module/utils/colors.js +55 -0
  237. package/lib/module/utils/colors.js.map +1 -0
  238. package/lib/module/utils/responsive.js +116 -0
  239. package/lib/module/utils/responsive.js.map +1 -0
  240. package/lib/typescript/components/FluentGlass.d.ts +25 -0
  241. package/lib/typescript/components/FluentGlass.d.ts.map +1 -0
  242. package/lib/typescript/components/FluentGlassAlert.d.ts +13 -0
  243. package/lib/typescript/components/FluentGlassAlert.d.ts.map +1 -0
  244. package/lib/typescript/components/FluentGlassBadge.d.ts +22 -0
  245. package/lib/typescript/components/FluentGlassBadge.d.ts.map +1 -0
  246. package/lib/typescript/components/FluentGlassBarChart.d.ts +30 -0
  247. package/lib/typescript/components/FluentGlassBarChart.d.ts.map +1 -0
  248. package/lib/typescript/components/FluentGlassBreadcrumb.d.ts +22 -0
  249. package/lib/typescript/components/FluentGlassBreadcrumb.d.ts.map +1 -0
  250. package/lib/typescript/components/FluentGlassButton.d.ts +27 -0
  251. package/lib/typescript/components/FluentGlassButton.d.ts.map +1 -0
  252. package/lib/typescript/components/FluentGlassCalendarWidget.d.ts +13 -0
  253. package/lib/typescript/components/FluentGlassCalendarWidget.d.ts.map +1 -0
  254. package/lib/typescript/components/FluentGlassCard.d.ts +30 -0
  255. package/lib/typescript/components/FluentGlassCard.d.ts.map +1 -0
  256. package/lib/typescript/components/FluentGlassCheckbox.d.ts +14 -0
  257. package/lib/typescript/components/FluentGlassCheckbox.d.ts.map +1 -0
  258. package/lib/typescript/components/FluentGlassClockWidget.d.ts +11 -0
  259. package/lib/typescript/components/FluentGlassClockWidget.d.ts.map +1 -0
  260. package/lib/typescript/components/FluentGlassCodeBlock.d.ts +11 -0
  261. package/lib/typescript/components/FluentGlassCodeBlock.d.ts.map +1 -0
  262. package/lib/typescript/components/FluentGlassContainer.d.ts +22 -0
  263. package/lib/typescript/components/FluentGlassContainer.d.ts.map +1 -0
  264. package/lib/typescript/components/FluentGlassCrossfade.d.ts +24 -0
  265. package/lib/typescript/components/FluentGlassCrossfade.d.ts.map +1 -0
  266. package/lib/typescript/components/FluentGlassDateInput.d.ts +18 -0
  267. package/lib/typescript/components/FluentGlassDateInput.d.ts.map +1 -0
  268. package/lib/typescript/components/FluentGlassDatePicker.d.ts +9 -0
  269. package/lib/typescript/components/FluentGlassDatePicker.d.ts.map +1 -0
  270. package/lib/typescript/components/FluentGlassDialog.d.ts +18 -0
  271. package/lib/typescript/components/FluentGlassDialog.d.ts.map +1 -0
  272. package/lib/typescript/components/FluentGlassDock.d.ts +19 -0
  273. package/lib/typescript/components/FluentGlassDock.d.ts.map +1 -0
  274. package/lib/typescript/components/FluentGlassDropdown.d.ts +23 -0
  275. package/lib/typescript/components/FluentGlassDropdown.d.ts.map +1 -0
  276. package/lib/typescript/components/FluentGlassEmailInput.d.ts +17 -0
  277. package/lib/typescript/components/FluentGlassEmailInput.d.ts.map +1 -0
  278. package/lib/typescript/components/FluentGlassInput.d.ts +12 -0
  279. package/lib/typescript/components/FluentGlassInput.d.ts.map +1 -0
  280. package/lib/typescript/components/FluentGlassLabeledInput.d.ts +19 -0
  281. package/lib/typescript/components/FluentGlassLabeledInput.d.ts.map +1 -0
  282. package/lib/typescript/components/FluentGlassLayout.d.ts +11 -0
  283. package/lib/typescript/components/FluentGlassLayout.d.ts.map +1 -0
  284. package/lib/typescript/components/FluentGlassPasswordInput.d.ts +15 -0
  285. package/lib/typescript/components/FluentGlassPasswordInput.d.ts.map +1 -0
  286. package/lib/typescript/components/FluentGlassPopover.d.ts +17 -0
  287. package/lib/typescript/components/FluentGlassPopover.d.ts.map +1 -0
  288. package/lib/typescript/components/FluentGlassResponsiveRow.d.ts +25 -0
  289. package/lib/typescript/components/FluentGlassResponsiveRow.d.ts.map +1 -0
  290. package/lib/typescript/components/FluentGlassScrollArea.d.ts +16 -0
  291. package/lib/typescript/components/FluentGlassScrollArea.d.ts.map +1 -0
  292. package/lib/typescript/components/FluentGlassSegmentedControl.d.ts +15 -0
  293. package/lib/typescript/components/FluentGlassSegmentedControl.d.ts.map +1 -0
  294. package/lib/typescript/components/FluentGlassSelect.d.ts +23 -0
  295. package/lib/typescript/components/FluentGlassSelect.d.ts.map +1 -0
  296. package/lib/typescript/components/FluentGlassSeparator.d.ts +13 -0
  297. package/lib/typescript/components/FluentGlassSeparator.d.ts.map +1 -0
  298. package/lib/typescript/components/FluentGlassSheet.d.ts +11 -0
  299. package/lib/typescript/components/FluentGlassSheet.d.ts.map +1 -0
  300. package/lib/typescript/components/FluentGlassSidebar.d.ts +44 -0
  301. package/lib/typescript/components/FluentGlassSidebar.d.ts.map +1 -0
  302. package/lib/typescript/components/FluentGlassSimpleCard.d.ts +19 -0
  303. package/lib/typescript/components/FluentGlassSimpleCard.d.ts.map +1 -0
  304. package/lib/typescript/components/FluentGlassSkeleton.d.ts +14 -0
  305. package/lib/typescript/components/FluentGlassSkeleton.d.ts.map +1 -0
  306. package/lib/typescript/components/FluentGlassSlider.d.ts +31 -0
  307. package/lib/typescript/components/FluentGlassSlider.d.ts.map +1 -0
  308. package/lib/typescript/components/FluentGlassStatWidget.d.ts +17 -0
  309. package/lib/typescript/components/FluentGlassStatWidget.d.ts.map +1 -0
  310. package/lib/typescript/components/FluentGlassStatusIndicator.d.ts +16 -0
  311. package/lib/typescript/components/FluentGlassStatusIndicator.d.ts.map +1 -0
  312. package/lib/typescript/components/FluentGlassSwitch.d.ts +13 -0
  313. package/lib/typescript/components/FluentGlassSwitch.d.ts.map +1 -0
  314. package/lib/typescript/components/FluentGlassTable.d.ts +50 -0
  315. package/lib/typescript/components/FluentGlassTable.d.ts.map +1 -0
  316. package/lib/typescript/components/FluentGlassTag.d.ts +18 -0
  317. package/lib/typescript/components/FluentGlassTag.d.ts.map +1 -0
  318. package/lib/typescript/components/FluentGlassTextInput.d.ts +21 -0
  319. package/lib/typescript/components/FluentGlassTextInput.d.ts.map +1 -0
  320. package/lib/typescript/components/FluentGlassTimeline.d.ts +27 -0
  321. package/lib/typescript/components/FluentGlassTimeline.d.ts.map +1 -0
  322. package/lib/typescript/components/FluentGlassWeatherWidget.d.ts +13 -0
  323. package/lib/typescript/components/FluentGlassWeatherWidget.d.ts.map +1 -0
  324. package/lib/typescript/components/index.d.ts +43 -0
  325. package/lib/typescript/components/index.d.ts.map +1 -0
  326. package/lib/typescript/fonts.d.ts +13 -0
  327. package/lib/typescript/fonts.d.ts.map +1 -0
  328. package/lib/typescript/hooks/useBreakpoint.d.ts +26 -0
  329. package/lib/typescript/hooks/useBreakpoint.d.ts.map +1 -0
  330. package/lib/typescript/index.d.ts +18 -0
  331. package/lib/typescript/index.d.ts.map +1 -0
  332. package/lib/typescript/theme/FluentGlassProvider.d.ts +21 -0
  333. package/lib/typescript/theme/FluentGlassProvider.d.ts.map +1 -0
  334. package/lib/typescript/theme/defaultTheme.d.ts +10 -0
  335. package/lib/typescript/theme/defaultTheme.d.ts.map +1 -0
  336. package/lib/typescript/theme/resolvers.d.ts +55 -0
  337. package/lib/typescript/theme/resolvers.d.ts.map +1 -0
  338. package/lib/typescript/theme/tokens.d.ts +27 -0
  339. package/lib/typescript/theme/tokens.d.ts.map +1 -0
  340. package/lib/typescript/theme/typography.d.ts +27 -0
  341. package/lib/typescript/theme/typography.d.ts.map +1 -0
  342. package/lib/typescript/theme/useTheme.d.ts +12 -0
  343. package/lib/typescript/theme/useTheme.d.ts.map +1 -0
  344. package/lib/typescript/types/components.d.ts +32 -0
  345. package/lib/typescript/types/components.d.ts.map +1 -0
  346. package/lib/typescript/types/theme.d.ts +79 -0
  347. package/lib/typescript/types/theme.d.ts.map +1 -0
  348. package/lib/typescript/utils/colors.d.ts +3 -0
  349. package/lib/typescript/utils/colors.d.ts.map +1 -0
  350. package/lib/typescript/utils/responsive.d.ts +62 -0
  351. package/lib/typescript/utils/responsive.d.ts.map +1 -0
  352. package/package.json +90 -0
  353. package/src/assets/fonts/Inter-Black.ttf +0 -0
  354. package/src/assets/fonts/Inter-Bold.ttf +0 -0
  355. package/src/assets/fonts/Inter-ExtraBold.ttf +0 -0
  356. package/src/assets/fonts/Inter-Medium.ttf +0 -0
  357. package/src/assets/fonts/Inter-Regular.ttf +0 -0
  358. package/src/assets/fonts/Inter-SemiBold.ttf +0 -0
  359. package/src/components/FluentGlass.tsx +103 -0
  360. package/src/components/FluentGlassAlert.tsx +126 -0
  361. package/src/components/FluentGlassBadge.tsx +109 -0
  362. package/src/components/FluentGlassBarChart.tsx +295 -0
  363. package/src/components/FluentGlassBreadcrumb.tsx +173 -0
  364. package/src/components/FluentGlassButton.tsx +169 -0
  365. package/src/components/FluentGlassCalendarWidget.tsx +55 -0
  366. package/src/components/FluentGlassCard.tsx +186 -0
  367. package/src/components/FluentGlassCheckbox.tsx +138 -0
  368. package/src/components/FluentGlassClockWidget.tsx +61 -0
  369. package/src/components/FluentGlassCodeBlock.tsx +241 -0
  370. package/src/components/FluentGlassContainer.tsx +63 -0
  371. package/src/components/FluentGlassCrossfade.tsx +122 -0
  372. package/src/components/FluentGlassDateInput.tsx +182 -0
  373. package/src/components/FluentGlassDatePicker.tsx +224 -0
  374. package/src/components/FluentGlassDialog.tsx +153 -0
  375. package/src/components/FluentGlassDock.tsx +194 -0
  376. package/src/components/FluentGlassDropdown.tsx +382 -0
  377. package/src/components/FluentGlassEmailInput.tsx +46 -0
  378. package/src/components/FluentGlassInput.tsx +77 -0
  379. package/src/components/FluentGlassLabeledInput.tsx +63 -0
  380. package/src/components/FluentGlassLayout.tsx +89 -0
  381. package/src/components/FluentGlassPasswordInput.tsx +59 -0
  382. package/src/components/FluentGlassPopover.tsx +74 -0
  383. package/src/components/FluentGlassResponsiveRow.tsx +76 -0
  384. package/src/components/FluentGlassScrollArea.tsx +110 -0
  385. package/src/components/FluentGlassSegmentedControl.tsx +140 -0
  386. package/src/components/FluentGlassSelect.tsx +139 -0
  387. package/src/components/FluentGlassSeparator.tsx +54 -0
  388. package/src/components/FluentGlassSheet.tsx +183 -0
  389. package/src/components/FluentGlassSidebar.tsx +349 -0
  390. package/src/components/FluentGlassSimpleCard.tsx +59 -0
  391. package/src/components/FluentGlassSkeleton.tsx +69 -0
  392. package/src/components/FluentGlassSlider.tsx +202 -0
  393. package/src/components/FluentGlassStatWidget.tsx +107 -0
  394. package/src/components/FluentGlassStatusIndicator.tsx +82 -0
  395. package/src/components/FluentGlassSwitch.tsx +130 -0
  396. package/src/components/FluentGlassTable.tsx +145 -0
  397. package/src/components/FluentGlassTag.tsx +98 -0
  398. package/src/components/FluentGlassTextInput.tsx +87 -0
  399. package/src/components/FluentGlassTimeline.tsx +335 -0
  400. package/src/components/FluentGlassWeatherWidget.tsx +54 -0
  401. package/src/components/index.ts +42 -0
  402. package/src/fonts.ts +24 -0
  403. package/src/hooks/useBreakpoint.ts +55 -0
  404. package/src/index.ts +97 -0
  405. package/src/theme/FluentGlassProvider.tsx +82 -0
  406. package/src/theme/defaultTheme.ts +44 -0
  407. package/src/theme/resolvers.ts +115 -0
  408. package/src/theme/tokens.ts +200 -0
  409. package/src/theme/typography.ts +41 -0
  410. package/src/theme/useTheme.ts +17 -0
  411. package/src/types/components.ts +47 -0
  412. package/src/types/theme.ts +82 -0
  413. package/src/utils/colors.ts +55 -0
  414. package/src/utils/responsive.ts +110 -0
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = FluentGlassLayout;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _expoLinearGradient = require("expo-linear-gradient");
10
+ var _useTheme = _interopRequireDefault(require("../theme/useTheme"));
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ /**
14
+ * FluentGlassLayout (Wrapper)
15
+ * The "Deep Liquid" environment.
16
+ * Replaces LiquidBackground with the specific "Orbs" mesh requested.
17
+ */
18
+ function FluentGlassLayout({
19
+ children
20
+ }) {
21
+ const theme = (0, _useTheme.default)();
22
+ const COLORS = theme.colors;
23
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
24
+ style: [styles.container, {
25
+ backgroundColor: COLORS.background
26
+ }],
27
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
28
+ style: [styles.baseLayer, {
29
+ backgroundColor: COLORS.background
30
+ }]
31
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
32
+ style: [styles.orbCyan, {
33
+ backgroundColor: COLORS.accent
34
+ }]
35
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_expoLinearGradient.LinearGradient, {
36
+ colors: [COLORS.accent, 'transparent'],
37
+ start: {
38
+ x: 0.2,
39
+ y: 0.2
40
+ },
41
+ end: {
42
+ x: 0.8,
43
+ y: 0.8
44
+ },
45
+ style: styles.orbCyan
46
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
47
+ style: [styles.orbBlue, {
48
+ backgroundColor: COLORS.secondary
49
+ }]
50
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_expoLinearGradient.LinearGradient, {
51
+ colors: [COLORS.secondary, 'transparent'],
52
+ start: {
53
+ x: 0.8,
54
+ y: 0.8
55
+ },
56
+ end: {
57
+ x: 0.2,
58
+ y: 0.2
59
+ },
60
+ style: styles.orbBlue
61
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
62
+ style: styles.noiseOverlay
63
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
64
+ style: styles.content,
65
+ children: children
66
+ })]
67
+ });
68
+ }
69
+ const styles = _reactNative.StyleSheet.create({
70
+ container: {
71
+ flex: 1,
72
+ overflow: 'hidden' // Contain decorative orbs
73
+ },
74
+ baseLayer: {
75
+ ..._reactNative.StyleSheet.absoluteFillObject
76
+ },
77
+ orbCyan: {
78
+ position: 'absolute',
79
+ top: -100,
80
+ left: -100,
81
+ width: 400,
82
+ height: 400,
83
+ borderRadius: 200,
84
+ opacity: 0.15
85
+ // blurRadius removed: not valid on View, only on Image
86
+ },
87
+ orbBlue: {
88
+ position: 'absolute',
89
+ bottom: -100,
90
+ right: -100,
91
+ width: 500,
92
+ height: 500,
93
+ borderRadius: 250,
94
+ opacity: 0.1
95
+ },
96
+ content: {
97
+ flex: 1,
98
+ zIndex: 1
99
+ },
100
+ noiseOverlay: {
101
+ ..._reactNative.StyleSheet.absoluteFillObject,
102
+ opacity: 0.02,
103
+ backgroundColor: '#fff' // Simple noise sim
104
+ }
105
+ });
106
+ //# sourceMappingURL=FluentGlassLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_expoLinearGradient","_useTheme","_jsxRuntime","e","__esModule","default","FluentGlassLayout","children","theme","useTheme","COLORS","colors","jsxs","View","style","styles","container","backgroundColor","background","jsx","baseLayer","orbCyan","accent","LinearGradient","start","x","y","end","orbBlue","secondary","noiseOverlay","content","StyleSheet","create","flex","overflow","absoluteFillObject","position","top","left","width","height","borderRadius","opacity","bottom","right","zIndex"],"sourceRoot":"..\\..\\..\\src","sources":["components/FluentGlassLayout.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAyC,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAMzC;AACA;AACA;AACA;AACA;AACe,SAASG,iBAAiBA,CAAC;EAAEC;AAAiC,CAAC,EAAE;EAC5E,MAAMC,KAAK,GAAG,IAAAC,iBAAQ,EAAC,CAAC;EACxB,MAAMC,MAAM,GAAGF,KAAK,CAACG,MAAM;EAE3B,oBACI,IAAAT,WAAA,CAAAU,IAAA,EAACb,YAAA,CAAAc,IAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAE;MAAEC,eAAe,EAAEP,MAAM,CAACQ;IAAW,CAAC,CAAE;IAAAX,QAAA,gBAEpE,IAAAL,WAAA,CAAAiB,GAAA,EAACpB,YAAA,CAAAc,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACK,SAAS,EAAE;QAAEH,eAAe,EAAEP,MAAM,CAACQ;MAAW,CAAC;IAAE,CAAE,CAAC,eAG3E,IAAAhB,WAAA,CAAAiB,GAAA,EAACpB,YAAA,CAAAc,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACM,OAAO,EAAE;QAAEJ,eAAe,EAAEP,MAAM,CAACY;MAAO,CAAC;IAAE,CAAE,CAAC,eACrE,IAAApB,WAAA,CAAAiB,GAAA,EAACnB,mBAAA,CAAAuB,cAAc;MACXZ,MAAM,EAAE,CAACD,MAAM,CAACY,MAAM,EAAE,aAAa,CAAE;MACvCE,KAAK,EAAE;QAAEC,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAE;MAC1BC,GAAG,EAAE;QAAEF,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAE;MACxBZ,KAAK,EAAEC,MAAM,CAACM;IAAQ,CACzB,CAAC,eAGF,IAAAnB,WAAA,CAAAiB,GAAA,EAACpB,YAAA,CAAAc,IAAI;MAACC,KAAK,EAAE,CAACC,MAAM,CAACa,OAAO,EAAE;QAAEX,eAAe,EAAEP,MAAM,CAACmB;MAAU,CAAC;IAAE,CAAE,CAAC,eACxE,IAAA3B,WAAA,CAAAiB,GAAA,EAACnB,mBAAA,CAAAuB,cAAc;MACXZ,MAAM,EAAE,CAACD,MAAM,CAACmB,SAAS,EAAE,aAAa,CAAE;MAC1CL,KAAK,EAAE;QAAEC,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAE;MAC1BC,GAAG,EAAE;QAAEF,CAAC,EAAE,GAAG;QAAEC,CAAC,EAAE;MAAI,CAAE;MACxBZ,KAAK,EAAEC,MAAM,CAACa;IAAQ,CACzB,CAAC,eAGF,IAAA1B,WAAA,CAAAiB,GAAA,EAACpB,YAAA,CAAAc,IAAI;MAACC,KAAK,EAAEC,MAAM,CAACe;IAAa,CAAE,CAAC,eAGpC,IAAA5B,WAAA,CAAAiB,GAAA,EAACpB,YAAA,CAAAc,IAAI;MAACC,KAAK,EAAEC,MAAM,CAACgB,OAAQ;MAAAxB,QAAA,EACvBA;IAAQ,CACP,CAAC;EAAA,CACL,CAAC;AAEf;AAEA,MAAMQ,MAAM,GAAGiB,uBAAU,CAACC,MAAM,CAAC;EAC7BjB,SAAS,EAAE;IACPkB,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE,QAAQ,CAAE;EACxB,CAAC;EACDf,SAAS,EAAE;IACP,GAAGY,uBAAU,CAACI;EAClB,CAAC;EACDf,OAAO,EAAE;IACLgB,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC,GAAG;IACTC,IAAI,EAAE,CAAC,GAAG;IACVC,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE,GAAG;IACXC,YAAY,EAAE,GAAG;IACjBC,OAAO,EAAE;IACT;EACJ,CAAC;EACDf,OAAO,EAAE;IACLS,QAAQ,EAAE,UAAU;IACpBO,MAAM,EAAE,CAAC,GAAG;IACZC,KAAK,EAAE,CAAC,GAAG;IACXL,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE,GAAG;IACXC,YAAY,EAAE,GAAG;IACjBC,OAAO,EAAE;EACb,CAAC;EACDZ,OAAO,EAAE;IACLG,IAAI,EAAE,CAAC;IACPY,MAAM,EAAE;EACZ,CAAC;EACDhB,YAAY,EAAE;IACV,GAAGE,uBAAU,CAACI,kBAAkB;IAChCO,OAAO,EAAE,IAAI;IACb1B,eAAe,EAAE,MAAM,CAAE;EAC7B;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = FluentGlassPasswordInput;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _vectorIcons = require("@expo/vector-icons");
10
+ var _FluentGlassTextInput = _interopRequireDefault(require("./FluentGlassTextInput"));
11
+ var _useTheme = _interopRequireDefault(require("../theme/useTheme"));
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
+ /**
16
+ * FluentGlassPasswordInput (Molécula)
17
+ * Input específico para contraseñas con botón para revelar/ocultar.
18
+ */
19
+ function FluentGlassPasswordInput({
20
+ value,
21
+ onChangeText,
22
+ placeholder = 'Password',
23
+ style,
24
+ accessibilityLabel
25
+ }) {
26
+ const theme = (0, _useTheme.default)();
27
+ const COLORS = theme.colors;
28
+ const [isPasswordVisible, setIsPasswordVisible] = (0, _react.useState)(false);
29
+ const toggleVisibility = () => {
30
+ setIsPasswordVisible(!isPasswordVisible);
31
+ };
32
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FluentGlassTextInput.default, {
33
+ value: value,
34
+ onChangeText: onChangeText,
35
+ placeholder: placeholder,
36
+ secureTextEntry: !isPasswordVisible,
37
+ autoCapitalize: "none",
38
+ style: style,
39
+ accessibilityLabel: accessibilityLabel ?? 'Password',
40
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
41
+ onPress: toggleVisibility,
42
+ style: styles.iconButton,
43
+ hitSlop: 10,
44
+ accessibilityRole: "button",
45
+ accessibilityLabel: "Toggle password visibility",
46
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_vectorIcons.Ionicons, {
47
+ name: isPasswordVisible ? "eye-off-outline" : "eye-outline",
48
+ size: 20,
49
+ color: COLORS.textSecondary
50
+ })
51
+ })
52
+ });
53
+ }
54
+ const styles = _reactNative.StyleSheet.create({
55
+ iconButton: {
56
+ padding: 10,
57
+ marginRight: 6
58
+ }
59
+ });
60
+ //# sourceMappingURL=FluentGlassPasswordInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_vectorIcons","_FluentGlassTextInput","_interopRequireDefault","_useTheme","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FluentGlassPasswordInput","value","onChangeText","placeholder","style","accessibilityLabel","theme","useTheme","COLORS","colors","isPasswordVisible","setIsPasswordVisible","useState","toggleVisibility","jsx","secureTextEntry","autoCapitalize","children","TouchableOpacity","onPress","styles","iconButton","hitSlop","accessibilityRole","Ionicons","name","size","color","textSecondary","StyleSheet","create","padding","marginRight"],"sourceRoot":"..\\..\\..\\src","sources":["components/FluentGlassPasswordInput.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = FluentGlassPopover;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _FluentGlass = _interopRequireDefault(require("./FluentGlass"));
10
+ var _useTheme = _interopRequireDefault(require("../theme/useTheme"));
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ /**
14
+ * FluentGlassPopover (Component)
15
+ * Simple tooltip/popover container.
16
+ * Note: Full positioning logic is complex; this is a display atom.
17
+ */
18
+ function FluentGlassPopover({
19
+ children,
20
+ content,
21
+ visible,
22
+ size,
23
+ colorScheme,
24
+ blur,
25
+ radius = 'md',
26
+ style
27
+ }) {
28
+ const {
29
+ typography,
30
+ colors
31
+ } = (0, _useTheme.default)();
32
+ if (!visible) return children;
33
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
34
+ style: styles.container,
35
+ children: [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
36
+ style: styles.popover,
37
+ accessibilityLabel: "Popover",
38
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FluentGlass.default, {
39
+ style: [styles.glass, style],
40
+ size: size,
41
+ colorScheme: colorScheme,
42
+ blur: blur,
43
+ radius: radius,
44
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
45
+ style: [styles.text, {
46
+ fontFamily: typography.medium,
47
+ color: colors.textPrimary
48
+ }],
49
+ children: content
50
+ })
51
+ })
52
+ })]
53
+ });
54
+ }
55
+ const styles = _reactNative.StyleSheet.create({
56
+ container: {
57
+ position: 'relative',
58
+ zIndex: 10
59
+ },
60
+ popover: {
61
+ position: 'absolute',
62
+ top: -40,
63
+ alignSelf: 'center'
64
+ },
65
+ glass: {
66
+ paddingVertical: 6,
67
+ paddingHorizontal: 12,
68
+ minWidth: 100,
69
+ alignItems: 'center'
70
+ },
71
+ text: {
72
+ fontSize: 12
73
+ }
74
+ });
75
+ //# sourceMappingURL=FluentGlassPopover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_FluentGlass","_useTheme","_jsxRuntime","e","__esModule","default","FluentGlassPopover","children","content","visible","size","colorScheme","blur","radius","style","typography","colors","useTheme","jsxs","View","styles","container","jsx","popover","accessibilityLabel","glass","Text","text","fontFamily","medium","color","textPrimary","StyleSheet","create","position","zIndex","top","alignSelf","paddingVertical","paddingHorizontal","minWidth","alignItems","fontSize"],"sourceRoot":"..\\..\\..\\src","sources":["components/FluentGlassPopover.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,SAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAyC,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAWzC;AACA;AACA;AACA;AACA;AACe,SAASG,kBAAkBA,CAAC;EAAEC,QAAQ;EACjDC,OAAO;EACPC,OAAO;EACPC,IAAI;EACJC,WAAW;EACXC,IAAI;EACJC,MAAM,GAAG,IAAI;EACbC;AAA+B,CAAC,EAAE;EAClC,MAAM;IAAEC,UAAU;IAAEC;EAAO,CAAC,GAAG,IAAAC,iBAAQ,EAAC,CAAC;EAEzC,IAAI,CAACR,OAAO,EAAE,OAAOF,QAAQ;EAE7B,oBACI,IAAAL,WAAA,CAAAgB,IAAA,EAACnB,YAAA,CAAAoB,IAAI;IAACL,KAAK,EAAEM,MAAM,CAACC,SAAU;IAAAd,QAAA,GACzBA,QAAQ,eACT,IAAAL,WAAA,CAAAoB,GAAA,EAACvB,YAAA,CAAAoB,IAAI;MAACL,KAAK,EAAEM,MAAM,CAACG,OAAQ;MAACC,kBAAkB,EAAC,SAAS;MAAAjB,QAAA,eACrD,IAAAL,WAAA,CAAAoB,GAAA,EAACtB,YAAA,CAAAK,OAAW;QACRS,KAAK,EAAE,CAACM,MAAM,CAACK,KAAK,EAAEX,KAAK,CAAE;QAC7BJ,IAAI,EAAEA,IAAK;QACXC,WAAW,EAAEA,WAAY;QACzBC,IAAI,EAAEA,IAAK;QACXC,MAAM,EAAEA,MAAO;QAAAN,QAAA,eAEf,IAAAL,WAAA,CAAAoB,GAAA,EAACvB,YAAA,CAAA2B,IAAI;UAACZ,KAAK,EAAE,CACTM,MAAM,CAACO,IAAI,EACX;YAAEC,UAAU,EAAEb,UAAU,CAACc,MAAM;YAAEC,KAAK,EAAEd,MAAM,CAACe;UAAY,CAAC,CAC9D;UAAAxB,QAAA,EACGC;QAAO,CACN;MAAC,CACE;IAAC,CACZ,CAAC;EAAA,CACL,CAAC;AAEf;AAEA,MAAMY,MAAM,GAAGY,uBAAU,CAACC,MAAM,CAAC;EAC7BZ,SAAS,EAAE;IACPa,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE;EACZ,CAAC;EACDZ,OAAO,EAAE;IACLW,QAAQ,EAAE,UAAU;IACpBE,GAAG,EAAE,CAAC,EAAE;IACRC,SAAS,EAAE;EACf,CAAC;EACDZ,KAAK,EAAE;IACHa,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE,EAAE;IACrBC,QAAQ,EAAE,GAAG;IACbC,UAAU,EAAE;EAChB,CAAC;EACDd,IAAI,EAAE;IACFe,QAAQ,EAAE;EACd;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = FluentGlassResponsiveRow;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _useBreakpoint = _interopRequireDefault(require("../hooks/useBreakpoint"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ /**
13
+ * FluentGlassResponsiveRow (Layout Helper)
14
+ *
15
+ * Renders children in a responsive flex row:
16
+ * - Mobile (<600px): single column (children stack vertically)
17
+ * - Tablet (600–1023px): 2 columns
18
+ * - Desktop (≥1024px): configurable columns (default 2, max 3)
19
+ *
20
+ * Props:
21
+ * columns - Number of columns on desktop (default: 2, max: 3)
22
+ * gap - Gap between items (default: 16)
23
+ * style - Container style override (optional)
24
+ * mobileStack - If true, stack vertically on mobile (default: true)
25
+ * children - Elements to distribute across columns
26
+ */function FluentGlassResponsiveRow({
27
+ columns: desktopCols = 2,
28
+ gap = 16,
29
+ style,
30
+ mobileStack = true,
31
+ children
32
+ }) {
33
+ const {
34
+ isMobile,
35
+ isTablet
36
+ } = (0, _useBreakpoint.default)();
37
+
38
+ // Determine actual column count
39
+ let cols = desktopCols;
40
+ if (isMobile && mobileStack) cols = 1;else if (isTablet) cols = Math.min(desktopCols, 2);
41
+ const childrenArray = _react.default.Children.toArray(children).filter(Boolean);
42
+ if (cols <= 1) {
43
+ // Stack vertically
44
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
45
+ style: [{
46
+ gap
47
+ }, style],
48
+ children: childrenArray
49
+ });
50
+ }
51
+
52
+ // Flex row with wrapping
53
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
54
+ style: [styles.row, {
55
+ gap
56
+ }, style],
57
+ children: childrenArray.map((child, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
58
+ style: {
59
+ flexBasis: `${100 / cols - 1}%`,
60
+ flexGrow: 1,
61
+ flexShrink: 1,
62
+ minWidth: 280
63
+ },
64
+ children: child
65
+ }, index))
66
+ });
67
+ }
68
+ const styles = _reactNative.StyleSheet.create({
69
+ row: {
70
+ flexDirection: 'row',
71
+ flexWrap: 'wrap'
72
+ }
73
+ });
74
+ //# sourceMappingURL=FluentGlassResponsiveRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_useBreakpoint","_jsxRuntime","e","__esModule","default","FluentGlassResponsiveRow","columns","desktopCols","gap","style","mobileStack","children","isMobile","isTablet","useBreakpoint","cols","Math","min","childrenArray","React","Children","toArray","filter","Boolean","jsx","View","styles","row","map","child","index","flexBasis","flexGrow","flexShrink","minWidth","StyleSheet","create","flexDirection","flexWrap"],"sourceRoot":"..\\..\\..\\src","sources":["components/FluentGlassResponsiveRow.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAmD,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GACe,SAASG,wBAAwBA,CAAC;EAC7CC,OAAO,EAAEC,WAAW,GAAG,CAAC;EACxBC,GAAG,GAAG,EAAE;EACRC,KAAK;EACLC,WAAW,GAAG,IAAI;EAClBC;AAOJ,CAAC,EAAE;EACC,MAAM;IAAEC,QAAQ;IAAEC;EAAS,CAAC,GAAG,IAAAC,sBAAa,EAAC,CAAC;;EAE9C;EACA,IAAIC,IAAI,GAAGR,WAAW;EACtB,IAAIK,QAAQ,IAAIF,WAAW,EAAEK,IAAI,GAAG,CAAC,CAAC,KACjC,IAAIF,QAAQ,EAAEE,IAAI,GAAGC,IAAI,CAACC,GAAG,CAACV,WAAW,EAAE,CAAC,CAAC;EAElD,MAAMW,aAAa,GAAGC,cAAK,CAACC,QAAQ,CAACC,OAAO,CAACV,QAAQ,CAAC,CAACW,MAAM,CAACC,OAAO,CAAC;EAEtE,IAAIR,IAAI,IAAI,CAAC,EAAE;IACX;IACA,oBACI,IAAAd,WAAA,CAAAuB,GAAA,EAACzB,YAAA,CAAA0B,IAAI;MAAChB,KAAK,EAAE,CAAC;QAAED;MAAI,CAAC,EAAEC,KAAK,CAAE;MAAAE,QAAA,EACzBO;IAAa,CACZ,CAAC;EAEf;;EAEA;EACA,oBACI,IAAAjB,WAAA,CAAAuB,GAAA,EAACzB,YAAA,CAAA0B,IAAI;IAAChB,KAAK,EAAE,CAACiB,MAAM,CAACC,GAAG,EAAE;MAAEnB;IAAI,CAAC,EAAEC,KAAK,CAAE;IAAAE,QAAA,EACrCO,aAAa,CAACU,GAAG,CAAC,CAACC,KAAK,EAAEC,KAAK,kBAC5B,IAAA7B,WAAA,CAAAuB,GAAA,EAACzB,YAAA,CAAA0B,IAAI;MAEDhB,KAAK,EAAE;QACHsB,SAAS,EAAE,GAAI,GAAG,GAAGhB,IAAI,GAAI,CAAC,GAAG;QACjCiB,QAAQ,EAAE,CAAC;QACXC,UAAU,EAAE,CAAC;QACbC,QAAQ,EAAE;MACd,CAAE;MAAAvB,QAAA,EAEDkB;IAAK,GARDC,KASH,CACT;EAAC,CACA,CAAC;AAEf;AAEA,MAAMJ,MAAM,GAAGS,uBAAU,CAACC,MAAM,CAAC;EAC7BT,GAAG,EAAE;IACDU,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE;EACd;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = FluentGlassScrollArea;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _useTheme = _interopRequireDefault(require("../theme/useTheme"));
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
+ // Inject global scrollbar CSS on web (once)
14
+ let scrollbarStyleInjected = false;
15
+ function injectScrollbarCSS(colors) {
16
+ if (scrollbarStyleInjected || _reactNative.Platform.OS !== 'web') return;
17
+ scrollbarStyleInjected = true;
18
+ const css = `
19
+ /* FluentGlass Custom Scrollbar — Deep Liquid Theme */
20
+ /* !important is required to override React Native Web's inline scrollbar hiding */
21
+
22
+ /* Webkit (Chrome, Edge, Safari) */
23
+ ::-webkit-scrollbar {
24
+ width: 8px !important;
25
+ height: 8px !important;
26
+ display: block !important;
27
+ }
28
+
29
+ ::-webkit-scrollbar-track {
30
+ background: ${colors.background}4D !important;
31
+ border-radius: 8px !important;
32
+ }
33
+
34
+ ::-webkit-scrollbar-thumb {
35
+ background: ${colors.border} !important;
36
+ border-radius: 8px !important;
37
+ border: 1px solid ${colors.borderSubtle} !important;
38
+ }
39
+
40
+ ::-webkit-scrollbar-thumb:hover {
41
+ background: ${colors.accent}73 !important;
42
+ border-color: ${colors.accent}4D !important;
43
+ }
44
+
45
+ ::-webkit-scrollbar-thumb:active {
46
+ background: ${colors.accent}99 !important;
47
+ }
48
+
49
+ ::-webkit-scrollbar-corner {
50
+ background: transparent !important;
51
+ }
52
+
53
+ /* Firefox */
54
+ * {
55
+ scrollbar-width: thin !important;
56
+ scrollbar-color: ${colors.border} ${colors.background}4D !important;
57
+ }
58
+ `;
59
+ const style = document.createElement('style');
60
+ style.textContent = css;
61
+ style.id = 'fluentglass-scrollbar';
62
+ document.head.appendChild(style);
63
+ }
64
+
65
+ /**
66
+ * FluentGlassScrollArea (Component)
67
+ * Standard scroll view wrapper with custom glassmorphism scrollbar on web.
68
+ * On native platforms, uses the default system scrollbar.
69
+ */
70
+
71
+ function FluentGlassScrollArea({
72
+ children,
73
+ style,
74
+ contentContainerStyle,
75
+ horizontal = false,
76
+ showsIndicators = true
77
+ }) {
78
+ const theme = (0, _useTheme.default)();
79
+
80
+ // Inject custom scrollbar CSS on mount (web only, once globally)
81
+ (0, _react.useEffect)(() => {
82
+ injectScrollbarCSS(theme.colors);
83
+ }, []);
84
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
85
+ style: [styles.container, style],
86
+ contentContainerStyle: [styles.content, contentContainerStyle],
87
+ horizontal: horizontal,
88
+ showsHorizontalScrollIndicator: showsIndicators && horizontal,
89
+ showsVerticalScrollIndicator: showsIndicators && !horizontal,
90
+ children: children
91
+ });
92
+ }
93
+ const styles = _reactNative.StyleSheet.create({
94
+ container: {
95
+ flex: 1
96
+ },
97
+ content: {
98
+ padding: 0
99
+ }
100
+ });
101
+ //# sourceMappingURL=FluentGlassScrollArea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_useTheme","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","scrollbarStyleInjected","injectScrollbarCSS","colors","Platform","OS","css","background","border","borderSubtle","accent","style","document","createElement","textContent","id","head","appendChild","FluentGlassScrollArea","children","contentContainerStyle","horizontal","showsIndicators","theme","useTheme","useEffect","jsx","ScrollView","styles","container","content","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","StyleSheet","create","flex","padding"],"sourceRoot":"..\\..\\..\\src","sources":["components/FluentGlassScrollArea.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = FluentGlassSegmentedControl;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
+ var _FluentGlass = _interopRequireDefault(require("./FluentGlass"));
11
+ var _useTheme = _interopRequireDefault(require("../theme/useTheme"));
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
+ /**
16
+ * FluentGlassSegmentedControl
17
+ * A glass-style segmented control with a sliding indicator.
18
+ */
19
+
20
+ function FluentGlassSegmentedControl({
21
+ options = ['Option 1', 'Option 2'],
22
+ selectedIndex = 0,
23
+ onChange,
24
+ // (index: number) => void
25
+ style
26
+ }) {
27
+ const theme = (0, _useTheme.default)();
28
+ const [containerWidth, setContainerWidth] = (0, _react.useState)(0);
29
+ const translateX = (0, _reactNativeReanimated.useSharedValue)(0);
30
+
31
+ // Calculate width of the indicator based on container width and item count
32
+ const itemWidth = containerWidth / options.length;
33
+ (0, _react.useEffect)(() => {
34
+ if (itemWidth > 0) {
35
+ translateX.value = (0, _reactNativeReanimated.withSpring)(selectedIndex * itemWidth, {
36
+ damping: 25,
37
+ stiffness: 120
38
+ });
39
+ }
40
+ }, [selectedIndex, itemWidth]);
41
+ const handlePress = index => {
42
+ if (onChange) {
43
+ onChange(index);
44
+ }
45
+ };
46
+ const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
47
+ return {
48
+ transform: [{
49
+ translateX: translateX.value
50
+ }],
51
+ width: itemWidth - 8 // padding adjustment
52
+ };
53
+ });
54
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FluentGlass.default, {
55
+ style: [styles.container, style],
56
+ intensity: 30,
57
+ tint: "deep",
58
+ borderRadius: 16,
59
+ accessibilityRole: "tablist",
60
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
61
+ style: styles.track,
62
+ onLayout: e => setContainerWidth(e.nativeEvent.layout.width),
63
+ children: [containerWidth > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
64
+ style: [styles.indicatorContainer, animatedStyle],
65
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_FluentGlass.default, {
66
+ style: styles.indicator,
67
+ intensity: 40,
68
+ tint: "dark",
69
+ borderRadius: 12,
70
+ borderOpacity: 0.4
71
+ })
72
+ }), options.map((option, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
73
+ onPress: () => handlePress(index),
74
+ style: styles.option,
75
+ accessibilityRole: "tab",
76
+ accessibilityLabel: option,
77
+ accessibilityState: {
78
+ selected: selectedIndex === index
79
+ },
80
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
81
+ style: [{
82
+ fontSize: 14
83
+ }, {
84
+ color: theme.colors.textSecondary,
85
+ fontFamily: theme.typography.medium
86
+ }, selectedIndex === index && {
87
+ color: theme.colors.textPrimary,
88
+ fontFamily: theme.typography.bold
89
+ }],
90
+ children: option
91
+ })
92
+ }, index))]
93
+ })
94
+ });
95
+ }
96
+ const styles = _reactNative.StyleSheet.create({
97
+ container: {
98
+ height: 48,
99
+ justifyContent: 'center'
100
+ },
101
+ track: {
102
+ flex: 1,
103
+ flexDirection: 'row',
104
+ alignItems: 'center',
105
+ padding: 4
106
+ },
107
+ indicatorContainer: {
108
+ position: 'absolute',
109
+ height: '100%',
110
+ left: 4,
111
+ top: 4,
112
+ paddingBottom: 8 // compensate parent padding
113
+ },
114
+ indicator: {
115
+ flex: 1,
116
+ width: '100%',
117
+ height: '100%'
118
+ },
119
+ option: {
120
+ flex: 1,
121
+ alignItems: 'center',
122
+ justifyContent: 'center',
123
+ zIndex: 1
124
+ }
125
+ });
126
+ //# sourceMappingURL=FluentGlassSegmentedControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_FluentGlass","_interopRequireDefault","_useTheme","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FluentGlassSegmentedControl","options","selectedIndex","onChange","style","theme","useTheme","containerWidth","setContainerWidth","useState","translateX","useSharedValue","itemWidth","length","useEffect","value","withSpring","damping","stiffness","handlePress","index","animatedStyle","useAnimatedStyle","transform","width","jsx","styles","container","intensity","tint","borderRadius","accessibilityRole","children","jsxs","View","track","onLayout","nativeEvent","layout","indicatorContainer","indicator","borderOpacity","map","option","Pressable","onPress","accessibilityLabel","accessibilityState","selected","Text","fontSize","color","colors","textSecondary","fontFamily","typography","medium","textPrimary","bold","StyleSheet","create","height","justifyContent","flex","flexDirection","alignItems","padding","position","left","top","paddingBottom","zIndex"],"sourceRoot":"..\\..\\..\\src","sources":["components/FluentGlassSegmentedControl.tsx"],"mappings":"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","ignoreList":[]}