related-ui-components 1.1.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 (571) hide show
  1. package/README.md +200 -0
  2. package/lib/commonjs/app/_layout.js +41 -0
  3. package/lib/commonjs/app/_layout.js.map +1 -0
  4. package/lib/commonjs/app/index.js +153 -0
  5. package/lib/commonjs/app/index.js.map +1 -0
  6. package/lib/commonjs/assets/components/BannerWithDetails.png +0 -0
  7. package/lib/commonjs/assets/components/DealCard-Horizontal.png +0 -0
  8. package/lib/commonjs/assets/components/DealCard-Vertical.png +0 -0
  9. package/lib/commonjs/assets/components/DealCard-floating.png +0 -0
  10. package/lib/commonjs/assets/components/DealCard-nested.png +0 -0
  11. package/lib/commonjs/assets/components/Filters.png +0 -0
  12. package/lib/commonjs/assets/components/Popup-1.png +0 -0
  13. package/lib/commonjs/assets/components/Popup-2.png +0 -0
  14. package/lib/commonjs/assets/components/Popup-3.png +0 -0
  15. package/lib/commonjs/assets/components/RedemptionOption-Horizontal.png +0 -0
  16. package/lib/commonjs/assets/components/RedemptionOption-Vertical.png +0 -0
  17. package/lib/commonjs/assets/components/SimpleBanner.png +0 -0
  18. package/lib/commonjs/assets/components/SimpleTrendingCard.png +0 -0
  19. package/lib/commonjs/assets/components/SimpleTrendingCardV2.png +0 -0
  20. package/lib/commonjs/assets/components/UnlockRewards-1.png +0 -0
  21. package/lib/commonjs/assets/components/UnlockRewards-2.png +0 -0
  22. package/lib/commonjs/assets/fonts/SpaceMono-Regular.ttf +0 -0
  23. package/lib/commonjs/assets/images/adaptive-icon.png +0 -0
  24. package/lib/commonjs/assets/images/face.jpg +0 -0
  25. package/lib/commonjs/assets/images/favicon.png +0 -0
  26. package/lib/commonjs/assets/images/giftvoucher.jpg +0 -0
  27. package/lib/commonjs/assets/images/icon.png +0 -0
  28. package/lib/commonjs/assets/images/insta.webp +0 -0
  29. package/lib/commonjs/assets/images/muse.jpg +0 -0
  30. package/lib/commonjs/assets/images/namshi-banner.png +0 -0
  31. package/lib/commonjs/assets/images/namshi.webp +0 -0
  32. package/lib/commonjs/assets/images/partial-react-logo.png +0 -0
  33. package/lib/commonjs/assets/images/pb-logo.jpg +0 -0
  34. package/lib/commonjs/assets/images/pb.jpg +0 -0
  35. package/lib/commonjs/assets/images/react-logo.png +0 -0
  36. package/lib/commonjs/assets/images/react-logo@2x.png +0 -0
  37. package/lib/commonjs/assets/images/react-logo@3x.png +0 -0
  38. package/lib/commonjs/assets/images/scratch_foreground.png +0 -0
  39. package/lib/commonjs/assets/images/splash-icon.png +0 -0
  40. package/lib/commonjs/assets/images/upgrade.png +0 -0
  41. package/lib/commonjs/components/Badges/Badge.js +65 -0
  42. package/lib/commonjs/components/Badges/Badge.js.map +1 -0
  43. package/lib/commonjs/components/Badges/README.md +98 -0
  44. package/lib/commonjs/components/Badges/index.js +29 -0
  45. package/lib/commonjs/components/Badges/index.js.map +1 -0
  46. package/lib/commonjs/components/Banner/Banner.js +135 -0
  47. package/lib/commonjs/components/Banner/Banner.js.map +1 -0
  48. package/lib/commonjs/components/Banner/BannerWithDetails.js +118 -0
  49. package/lib/commonjs/components/Banner/BannerWithDetails.js.map +1 -0
  50. package/lib/commonjs/components/Banner/README.md +101 -0
  51. package/lib/commonjs/components/Banner/index.js +48 -0
  52. package/lib/commonjs/components/Banner/index.js.map +1 -0
  53. package/lib/commonjs/components/BrandIcon/BrandIcon.js +103 -0
  54. package/lib/commonjs/components/BrandIcon/BrandIcon.js.map +1 -0
  55. package/lib/commonjs/components/BrandIcon/index.js +29 -0
  56. package/lib/commonjs/components/BrandIcon/index.js.map +1 -0
  57. package/lib/commonjs/components/Card/Card.js +124 -0
  58. package/lib/commonjs/components/Card/Card.js.map +1 -0
  59. package/lib/commonjs/components/Card/CardContent.js +42 -0
  60. package/lib/commonjs/components/Card/CardContent.js.map +1 -0
  61. package/lib/commonjs/components/Card/CardFooter.js +34 -0
  62. package/lib/commonjs/components/Card/CardFooter.js.map +1 -0
  63. package/lib/commonjs/components/Card/CardHeader.js +77 -0
  64. package/lib/commonjs/components/Card/CardHeader.js.map +1 -0
  65. package/lib/commonjs/components/Card/CardImage.js +51 -0
  66. package/lib/commonjs/components/Card/CardImage.js.map +1 -0
  67. package/lib/commonjs/components/Card/index.js +98 -0
  68. package/lib/commonjs/components/Card/index.js.map +1 -0
  69. package/lib/commonjs/components/Card/templates/DealCard.js +188 -0
  70. package/lib/commonjs/components/Card/templates/DealCard.js.map +1 -0
  71. package/lib/commonjs/components/Card/templates/DealCardWithBackgroundImage.js +195 -0
  72. package/lib/commonjs/components/Card/templates/DealCardWithBackgroundImage.js.map +1 -0
  73. package/lib/commonjs/components/Card/templates/README.md +233 -0
  74. package/lib/commonjs/components/Card/templates/SimpleTrendingCard.js +59 -0
  75. package/lib/commonjs/components/Card/templates/SimpleTrendingCard.js.map +1 -0
  76. package/lib/commonjs/components/Card/types.js +6 -0
  77. package/lib/commonjs/components/Card/types.js.map +1 -0
  78. package/lib/commonjs/components/CloseIcon/CloseIcon.js +71 -0
  79. package/lib/commonjs/components/CloseIcon/CloseIcon.js.map +1 -0
  80. package/lib/commonjs/components/CloseIcon/index.js +29 -0
  81. package/lib/commonjs/components/CloseIcon/index.js.map +1 -0
  82. package/lib/commonjs/components/Filters/Filters.js +339 -0
  83. package/lib/commonjs/components/Filters/Filters.js.map +1 -0
  84. package/lib/commonjs/components/Filters/PointsRangeSelector.js +262 -0
  85. package/lib/commonjs/components/Filters/PointsRangeSelector.js.map +1 -0
  86. package/lib/commonjs/components/Filters/README.md +212 -0
  87. package/lib/commonjs/components/Filters/index.js +47 -0
  88. package/lib/commonjs/components/Filters/index.js.map +1 -0
  89. package/lib/commonjs/components/Input/Input.js +156 -0
  90. package/lib/commonjs/components/Input/Input.js.map +1 -0
  91. package/lib/commonjs/components/Input/README.md +128 -0
  92. package/lib/commonjs/components/Input/index.js +29 -0
  93. package/lib/commonjs/components/Input/index.js.map +1 -0
  94. package/lib/commonjs/components/LockOverlay/LockOverlay.js +65 -0
  95. package/lib/commonjs/components/LockOverlay/LockOverlay.js.map +1 -0
  96. package/lib/commonjs/components/LockOverlay/index.js +29 -0
  97. package/lib/commonjs/components/LockOverlay/index.js.map +1 -0
  98. package/lib/commonjs/components/Popup/Popup.js +296 -0
  99. package/lib/commonjs/components/Popup/Popup.js.map +1 -0
  100. package/lib/commonjs/components/Popup/README.md +133 -0
  101. package/lib/commonjs/components/Popup/index.js +29 -0
  102. package/lib/commonjs/components/Popup/index.js.map +1 -0
  103. package/lib/commonjs/components/ProgressBar/ProgressBar.js +121 -0
  104. package/lib/commonjs/components/ProgressBar/ProgressBar.js.map +1 -0
  105. package/lib/commonjs/components/ProgressBar/index.js +29 -0
  106. package/lib/commonjs/components/ProgressBar/index.js.map +1 -0
  107. package/lib/commonjs/components/RedemptionOption/README.md +148 -0
  108. package/lib/commonjs/components/RedemptionOption/RedemptionOption.js +111 -0
  109. package/lib/commonjs/components/RedemptionOption/RedemptionOption.js.map +1 -0
  110. package/lib/commonjs/components/RedemptionOption/index.js +29 -0
  111. package/lib/commonjs/components/RedemptionOption/index.js.map +1 -0
  112. package/lib/commonjs/components/ScratchCard/README.md +119 -0
  113. package/lib/commonjs/components/ScratchCard/ScratchCard.js +153 -0
  114. package/lib/commonjs/components/ScratchCard/ScratchCard.js.map +1 -0
  115. package/lib/commonjs/components/ScratchCard/ScratchCardContent.js +28 -0
  116. package/lib/commonjs/components/ScratchCard/ScratchCardContent.js.map +1 -0
  117. package/lib/commonjs/components/ScratchCard/index.js +48 -0
  118. package/lib/commonjs/components/ScratchCard/index.js.map +1 -0
  119. package/lib/commonjs/components/UnlockRewards/README.md +187 -0
  120. package/lib/commonjs/components/UnlockRewards/RewardItem.js +125 -0
  121. package/lib/commonjs/components/UnlockRewards/RewardItem.js.map +1 -0
  122. package/lib/commonjs/components/UnlockRewards/UnlockRewards.js +207 -0
  123. package/lib/commonjs/components/UnlockRewards/UnlockRewards.js.map +1 -0
  124. package/lib/commonjs/components/UnlockRewards/index.js +48 -0
  125. package/lib/commonjs/components/UnlockRewards/index.js.map +1 -0
  126. package/lib/commonjs/components/Wheel/README.md +141 -0
  127. package/lib/commonjs/components/Wheel/Wheel.js +323 -0
  128. package/lib/commonjs/components/Wheel/Wheel.js.map +1 -0
  129. package/lib/commonjs/components/Wheel/index.js +29 -0
  130. package/lib/commonjs/components/Wheel/index.js.map +1 -0
  131. package/lib/commonjs/components/index.js +160 -0
  132. package/lib/commonjs/components/index.js.map +1 -0
  133. package/lib/commonjs/constants/BRANDS.js +57 -0
  134. package/lib/commonjs/constants/BRANDS.js.map +1 -0
  135. package/lib/commonjs/index.js +28 -0
  136. package/lib/commonjs/index.js.map +1 -0
  137. package/lib/commonjs/theme/Colors.js +120 -0
  138. package/lib/commonjs/theme/Colors.js.map +1 -0
  139. package/lib/commonjs/theme/ThemeContext.js +49 -0
  140. package/lib/commonjs/theme/ThemeContext.js.map +1 -0
  141. package/lib/commonjs/theme/index.js +28 -0
  142. package/lib/commonjs/theme/index.js.map +1 -0
  143. package/lib/module/app/_layout.js +36 -0
  144. package/lib/module/app/_layout.js.map +1 -0
  145. package/lib/module/app/index.js +143 -0
  146. package/lib/module/app/index.js.map +1 -0
  147. package/lib/module/assets/components/BannerWithDetails.png +0 -0
  148. package/lib/module/assets/components/DealCard-Horizontal.png +0 -0
  149. package/lib/module/assets/components/DealCard-Vertical.png +0 -0
  150. package/lib/module/assets/components/DealCard-floating.png +0 -0
  151. package/lib/module/assets/components/DealCard-nested.png +0 -0
  152. package/lib/module/assets/components/Filters.png +0 -0
  153. package/lib/module/assets/components/Popup-1.png +0 -0
  154. package/lib/module/assets/components/Popup-2.png +0 -0
  155. package/lib/module/assets/components/Popup-3.png +0 -0
  156. package/lib/module/assets/components/RedemptionOption-Horizontal.png +0 -0
  157. package/lib/module/assets/components/RedemptionOption-Vertical.png +0 -0
  158. package/lib/module/assets/components/SimpleBanner.png +0 -0
  159. package/lib/module/assets/components/SimpleTrendingCard.png +0 -0
  160. package/lib/module/assets/components/SimpleTrendingCardV2.png +0 -0
  161. package/lib/module/assets/components/UnlockRewards-1.png +0 -0
  162. package/lib/module/assets/components/UnlockRewards-2.png +0 -0
  163. package/lib/module/assets/fonts/SpaceMono-Regular.ttf +0 -0
  164. package/lib/module/assets/images/adaptive-icon.png +0 -0
  165. package/lib/module/assets/images/face.jpg +0 -0
  166. package/lib/module/assets/images/favicon.png +0 -0
  167. package/lib/module/assets/images/giftvoucher.jpg +0 -0
  168. package/lib/module/assets/images/icon.png +0 -0
  169. package/lib/module/assets/images/insta.webp +0 -0
  170. package/lib/module/assets/images/muse.jpg +0 -0
  171. package/lib/module/assets/images/namshi-banner.png +0 -0
  172. package/lib/module/assets/images/namshi.webp +0 -0
  173. package/lib/module/assets/images/partial-react-logo.png +0 -0
  174. package/lib/module/assets/images/pb-logo.jpg +0 -0
  175. package/lib/module/assets/images/pb.jpg +0 -0
  176. package/lib/module/assets/images/react-logo.png +0 -0
  177. package/lib/module/assets/images/react-logo@2x.png +0 -0
  178. package/lib/module/assets/images/react-logo@3x.png +0 -0
  179. package/lib/module/assets/images/scratch_foreground.png +0 -0
  180. package/lib/module/assets/images/splash-icon.png +0 -0
  181. package/lib/module/assets/images/upgrade.png +0 -0
  182. package/lib/module/components/Badges/Badge.js +59 -0
  183. package/lib/module/components/Badges/Badge.js.map +1 -0
  184. package/lib/module/components/Badges/README.md +98 -0
  185. package/lib/module/components/Badges/index.js +5 -0
  186. package/lib/module/components/Badges/index.js.map +1 -0
  187. package/lib/module/components/Banner/Banner.js +130 -0
  188. package/lib/module/components/Banner/Banner.js.map +1 -0
  189. package/lib/module/components/Banner/BannerWithDetails.js +111 -0
  190. package/lib/module/components/Banner/BannerWithDetails.js.map +1 -0
  191. package/lib/module/components/Banner/README.md +101 -0
  192. package/lib/module/components/Banner/index.js +7 -0
  193. package/lib/module/components/Banner/index.js.map +1 -0
  194. package/lib/module/components/BrandIcon/BrandIcon.js +98 -0
  195. package/lib/module/components/BrandIcon/BrandIcon.js.map +1 -0
  196. package/lib/module/components/BrandIcon/index.js +5 -0
  197. package/lib/module/components/BrandIcon/index.js.map +1 -0
  198. package/lib/module/components/Card/Card.js +119 -0
  199. package/lib/module/components/Card/Card.js.map +1 -0
  200. package/lib/module/components/Card/CardContent.js +37 -0
  201. package/lib/module/components/Card/CardContent.js.map +1 -0
  202. package/lib/module/components/Card/CardFooter.js +29 -0
  203. package/lib/module/components/Card/CardFooter.js.map +1 -0
  204. package/lib/module/components/Card/CardHeader.js +72 -0
  205. package/lib/module/components/Card/CardHeader.js.map +1 -0
  206. package/lib/module/components/Card/CardImage.js +46 -0
  207. package/lib/module/components/Card/CardImage.js.map +1 -0
  208. package/lib/module/components/Card/index.js +18 -0
  209. package/lib/module/components/Card/index.js.map +1 -0
  210. package/lib/module/components/Card/templates/DealCard.js +183 -0
  211. package/lib/module/components/Card/templates/DealCard.js.map +1 -0
  212. package/lib/module/components/Card/templates/DealCardWithBackgroundImage.js +188 -0
  213. package/lib/module/components/Card/templates/DealCardWithBackgroundImage.js.map +1 -0
  214. package/lib/module/components/Card/templates/README.md +233 -0
  215. package/lib/module/components/Card/templates/SimpleTrendingCard.js +54 -0
  216. package/lib/module/components/Card/templates/SimpleTrendingCard.js.map +1 -0
  217. package/lib/module/components/Card/types.js +4 -0
  218. package/lib/module/components/Card/types.js.map +1 -0
  219. package/lib/module/components/CloseIcon/CloseIcon.js +63 -0
  220. package/lib/module/components/CloseIcon/CloseIcon.js.map +1 -0
  221. package/lib/module/components/CloseIcon/index.js +5 -0
  222. package/lib/module/components/CloseIcon/index.js.map +1 -0
  223. package/lib/module/components/Filters/Filters.js +330 -0
  224. package/lib/module/components/Filters/Filters.js.map +1 -0
  225. package/lib/module/components/Filters/PointsRangeSelector.js +256 -0
  226. package/lib/module/components/Filters/PointsRangeSelector.js.map +1 -0
  227. package/lib/module/components/Filters/README.md +212 -0
  228. package/lib/module/components/Filters/index.js +7 -0
  229. package/lib/module/components/Filters/index.js.map +1 -0
  230. package/lib/module/components/Input/Input.js +150 -0
  231. package/lib/module/components/Input/Input.js.map +1 -0
  232. package/lib/module/components/Input/README.md +128 -0
  233. package/lib/module/components/Input/index.js +5 -0
  234. package/lib/module/components/Input/index.js.map +1 -0
  235. package/lib/module/components/LockOverlay/LockOverlay.js +60 -0
  236. package/lib/module/components/LockOverlay/LockOverlay.js.map +1 -0
  237. package/lib/module/components/LockOverlay/index.js +5 -0
  238. package/lib/module/components/LockOverlay/index.js.map +1 -0
  239. package/lib/module/components/Popup/Popup.js +291 -0
  240. package/lib/module/components/Popup/Popup.js.map +1 -0
  241. package/lib/module/components/Popup/README.md +133 -0
  242. package/lib/module/components/Popup/index.js +5 -0
  243. package/lib/module/components/Popup/index.js.map +1 -0
  244. package/lib/module/components/ProgressBar/ProgressBar.js +116 -0
  245. package/lib/module/components/ProgressBar/ProgressBar.js.map +1 -0
  246. package/lib/module/components/ProgressBar/index.js +5 -0
  247. package/lib/module/components/ProgressBar/index.js.map +1 -0
  248. package/lib/module/components/RedemptionOption/README.md +148 -0
  249. package/lib/module/components/RedemptionOption/RedemptionOption.js +106 -0
  250. package/lib/module/components/RedemptionOption/RedemptionOption.js.map +1 -0
  251. package/lib/module/components/RedemptionOption/index.js +5 -0
  252. package/lib/module/components/RedemptionOption/index.js.map +1 -0
  253. package/lib/module/components/ScratchCard/README.md +119 -0
  254. package/lib/module/components/ScratchCard/ScratchCard.js +147 -0
  255. package/lib/module/components/ScratchCard/ScratchCard.js.map +1 -0
  256. package/lib/module/components/ScratchCard/ScratchCardContent.js +24 -0
  257. package/lib/module/components/ScratchCard/ScratchCardContent.js.map +1 -0
  258. package/lib/module/components/ScratchCard/index.js +7 -0
  259. package/lib/module/components/ScratchCard/index.js.map +1 -0
  260. package/lib/module/components/UnlockRewards/README.md +187 -0
  261. package/lib/module/components/UnlockRewards/RewardItem.js +120 -0
  262. package/lib/module/components/UnlockRewards/RewardItem.js.map +1 -0
  263. package/lib/module/components/UnlockRewards/UnlockRewards.js +200 -0
  264. package/lib/module/components/UnlockRewards/UnlockRewards.js.map +1 -0
  265. package/lib/module/components/UnlockRewards/index.js +7 -0
  266. package/lib/module/components/UnlockRewards/index.js.map +1 -0
  267. package/lib/module/components/Wheel/README.md +141 -0
  268. package/lib/module/components/Wheel/Wheel.js +317 -0
  269. package/lib/module/components/Wheel/Wheel.js.map +1 -0
  270. package/lib/module/components/Wheel/index.js +5 -0
  271. package/lib/module/components/Wheel/index.js.map +1 -0
  272. package/lib/module/components/index.js +17 -0
  273. package/lib/module/components/index.js.map +1 -0
  274. package/lib/module/constants/BRANDS.js +53 -0
  275. package/lib/module/constants/BRANDS.js.map +1 -0
  276. package/lib/module/index.js +5 -0
  277. package/lib/module/index.js.map +1 -0
  278. package/lib/module/theme/Colors.js +116 -0
  279. package/lib/module/theme/Colors.js.map +1 -0
  280. package/lib/module/theme/ThemeContext.js +41 -0
  281. package/lib/module/theme/ThemeContext.js.map +1 -0
  282. package/lib/module/theme/index.js +5 -0
  283. package/lib/module/theme/index.js.map +1 -0
  284. package/lib/typescript/commonjs/app/_layout.d.ts +3 -0
  285. package/lib/typescript/commonjs/app/_layout.d.ts.map +1 -0
  286. package/lib/typescript/commonjs/app/index.d.ts +3 -0
  287. package/lib/typescript/commonjs/app/index.d.ts.map +1 -0
  288. package/lib/typescript/commonjs/components/Badges/Badge.d.ts +16 -0
  289. package/lib/typescript/commonjs/components/Badges/Badge.d.ts.map +1 -0
  290. package/lib/typescript/commonjs/components/Badges/index.d.ts +3 -0
  291. package/lib/typescript/commonjs/components/Badges/index.d.ts.map +1 -0
  292. package/lib/typescript/commonjs/components/Banner/Banner.d.ts +26 -0
  293. package/lib/typescript/commonjs/components/Banner/Banner.d.ts.map +1 -0
  294. package/lib/typescript/commonjs/components/Banner/BannerWithDetails.d.ts +19 -0
  295. package/lib/typescript/commonjs/components/Banner/BannerWithDetails.d.ts.map +1 -0
  296. package/lib/typescript/commonjs/components/Banner/index.d.ts +5 -0
  297. package/lib/typescript/commonjs/components/Banner/index.d.ts.map +1 -0
  298. package/lib/typescript/commonjs/components/BrandIcon/BrandIcon.d.ts +20 -0
  299. package/lib/typescript/commonjs/components/BrandIcon/BrandIcon.d.ts.map +1 -0
  300. package/lib/typescript/commonjs/components/BrandIcon/index.d.ts +3 -0
  301. package/lib/typescript/commonjs/components/BrandIcon/index.d.ts.map +1 -0
  302. package/lib/typescript/commonjs/components/Card/Card.d.ts +5 -0
  303. package/lib/typescript/commonjs/components/Card/Card.d.ts.map +1 -0
  304. package/lib/typescript/commonjs/components/Card/CardContent.d.ts +5 -0
  305. package/lib/typescript/commonjs/components/Card/CardContent.d.ts.map +1 -0
  306. package/lib/typescript/commonjs/components/Card/CardFooter.d.ts +5 -0
  307. package/lib/typescript/commonjs/components/Card/CardFooter.d.ts.map +1 -0
  308. package/lib/typescript/commonjs/components/Card/CardHeader.d.ts +5 -0
  309. package/lib/typescript/commonjs/components/Card/CardHeader.d.ts.map +1 -0
  310. package/lib/typescript/commonjs/components/Card/CardImage.d.ts +5 -0
  311. package/lib/typescript/commonjs/components/Card/CardImage.d.ts.map +1 -0
  312. package/lib/typescript/commonjs/components/Card/index.d.ts +11 -0
  313. package/lib/typescript/commonjs/components/Card/index.d.ts.map +1 -0
  314. package/lib/typescript/commonjs/components/Card/templates/DealCard.d.ts +33 -0
  315. package/lib/typescript/commonjs/components/Card/templates/DealCard.d.ts.map +1 -0
  316. package/lib/typescript/commonjs/components/Card/templates/DealCardWithBackgroundImage.d.ts +38 -0
  317. package/lib/typescript/commonjs/components/Card/templates/DealCardWithBackgroundImage.d.ts.map +1 -0
  318. package/lib/typescript/commonjs/components/Card/templates/SimpleTrendingCard.d.ts +14 -0
  319. package/lib/typescript/commonjs/components/Card/templates/SimpleTrendingCard.d.ts.map +1 -0
  320. package/lib/typescript/commonjs/components/Card/types.d.ts +78 -0
  321. package/lib/typescript/commonjs/components/Card/types.d.ts.map +1 -0
  322. package/lib/typescript/commonjs/components/CloseIcon/CloseIcon.d.ts +16 -0
  323. package/lib/typescript/commonjs/components/CloseIcon/CloseIcon.d.ts.map +1 -0
  324. package/lib/typescript/commonjs/components/CloseIcon/index.d.ts +3 -0
  325. package/lib/typescript/commonjs/components/CloseIcon/index.d.ts.map +1 -0
  326. package/lib/typescript/commonjs/components/Filters/Filters.d.ts +74 -0
  327. package/lib/typescript/commonjs/components/Filters/Filters.d.ts.map +1 -0
  328. package/lib/typescript/commonjs/components/Filters/PointsRangeSelector.d.ts +29 -0
  329. package/lib/typescript/commonjs/components/Filters/PointsRangeSelector.d.ts.map +1 -0
  330. package/lib/typescript/commonjs/components/Filters/index.d.ts +5 -0
  331. package/lib/typescript/commonjs/components/Filters/index.d.ts.map +1 -0
  332. package/lib/typescript/commonjs/components/Input/Input.d.ts +23 -0
  333. package/lib/typescript/commonjs/components/Input/Input.d.ts.map +1 -0
  334. package/lib/typescript/commonjs/components/Input/index.d.ts +3 -0
  335. package/lib/typescript/commonjs/components/Input/index.d.ts.map +1 -0
  336. package/lib/typescript/commonjs/components/LockOverlay/LockOverlay.d.ts +16 -0
  337. package/lib/typescript/commonjs/components/LockOverlay/LockOverlay.d.ts.map +1 -0
  338. package/lib/typescript/commonjs/components/LockOverlay/index.d.ts +3 -0
  339. package/lib/typescript/commonjs/components/LockOverlay/index.d.ts.map +1 -0
  340. package/lib/typescript/commonjs/components/Popup/Popup.d.ts +38 -0
  341. package/lib/typescript/commonjs/components/Popup/Popup.d.ts.map +1 -0
  342. package/lib/typescript/commonjs/components/Popup/index.d.ts +3 -0
  343. package/lib/typescript/commonjs/components/Popup/index.d.ts.map +1 -0
  344. package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts +26 -0
  345. package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts.map +1 -0
  346. package/lib/typescript/commonjs/components/ProgressBar/index.d.ts +3 -0
  347. package/lib/typescript/commonjs/components/ProgressBar/index.d.ts.map +1 -0
  348. package/lib/typescript/commonjs/components/RedemptionOption/RedemptionOption.d.ts +24 -0
  349. package/lib/typescript/commonjs/components/RedemptionOption/RedemptionOption.d.ts.map +1 -0
  350. package/lib/typescript/commonjs/components/RedemptionOption/index.d.ts +3 -0
  351. package/lib/typescript/commonjs/components/RedemptionOption/index.d.ts.map +1 -0
  352. package/lib/typescript/commonjs/components/ScratchCard/ScratchCard.d.ts +20 -0
  353. package/lib/typescript/commonjs/components/ScratchCard/ScratchCard.d.ts.map +1 -0
  354. package/lib/typescript/commonjs/components/ScratchCard/ScratchCardContent.d.ts +8 -0
  355. package/lib/typescript/commonjs/components/ScratchCard/ScratchCardContent.d.ts.map +1 -0
  356. package/lib/typescript/commonjs/components/ScratchCard/index.d.ts +5 -0
  357. package/lib/typescript/commonjs/components/ScratchCard/index.d.ts.map +1 -0
  358. package/lib/typescript/commonjs/components/UnlockRewards/RewardItem.d.ts +25 -0
  359. package/lib/typescript/commonjs/components/UnlockRewards/RewardItem.d.ts.map +1 -0
  360. package/lib/typescript/commonjs/components/UnlockRewards/UnlockRewards.d.ts +59 -0
  361. package/lib/typescript/commonjs/components/UnlockRewards/UnlockRewards.d.ts.map +1 -0
  362. package/lib/typescript/commonjs/components/UnlockRewards/index.d.ts +5 -0
  363. package/lib/typescript/commonjs/components/UnlockRewards/index.d.ts.map +1 -0
  364. package/lib/typescript/commonjs/components/Wheel/Wheel.d.ts +34 -0
  365. package/lib/typescript/commonjs/components/Wheel/Wheel.d.ts.map +1 -0
  366. package/lib/typescript/commonjs/components/Wheel/index.d.ts +3 -0
  367. package/lib/typescript/commonjs/components/Wheel/index.d.ts.map +1 -0
  368. package/lib/typescript/commonjs/components/index.d.ts +15 -0
  369. package/lib/typescript/commonjs/components/index.d.ts.map +1 -0
  370. package/lib/typescript/commonjs/constants/BRANDS.d.ts +7 -0
  371. package/lib/typescript/commonjs/constants/BRANDS.d.ts.map +1 -0
  372. package/lib/typescript/commonjs/index.d.ts +3 -0
  373. package/lib/typescript/commonjs/index.d.ts.map +1 -0
  374. package/lib/typescript/commonjs/package.json +1 -0
  375. package/lib/typescript/commonjs/theme/Colors.d.ts +28 -0
  376. package/lib/typescript/commonjs/theme/Colors.d.ts.map +1 -0
  377. package/lib/typescript/commonjs/theme/ThemeContext.d.ts +13 -0
  378. package/lib/typescript/commonjs/theme/ThemeContext.d.ts.map +1 -0
  379. package/lib/typescript/commonjs/theme/index.d.ts +3 -0
  380. package/lib/typescript/commonjs/theme/index.d.ts.map +1 -0
  381. package/lib/typescript/module/app/_layout.d.ts +3 -0
  382. package/lib/typescript/module/app/_layout.d.ts.map +1 -0
  383. package/lib/typescript/module/app/index.d.ts +3 -0
  384. package/lib/typescript/module/app/index.d.ts.map +1 -0
  385. package/lib/typescript/module/components/Badges/Badge.d.ts +16 -0
  386. package/lib/typescript/module/components/Badges/Badge.d.ts.map +1 -0
  387. package/lib/typescript/module/components/Badges/index.d.ts +3 -0
  388. package/lib/typescript/module/components/Badges/index.d.ts.map +1 -0
  389. package/lib/typescript/module/components/Banner/Banner.d.ts +26 -0
  390. package/lib/typescript/module/components/Banner/Banner.d.ts.map +1 -0
  391. package/lib/typescript/module/components/Banner/BannerWithDetails.d.ts +19 -0
  392. package/lib/typescript/module/components/Banner/BannerWithDetails.d.ts.map +1 -0
  393. package/lib/typescript/module/components/Banner/index.d.ts +5 -0
  394. package/lib/typescript/module/components/Banner/index.d.ts.map +1 -0
  395. package/lib/typescript/module/components/BrandIcon/BrandIcon.d.ts +20 -0
  396. package/lib/typescript/module/components/BrandIcon/BrandIcon.d.ts.map +1 -0
  397. package/lib/typescript/module/components/BrandIcon/index.d.ts +3 -0
  398. package/lib/typescript/module/components/BrandIcon/index.d.ts.map +1 -0
  399. package/lib/typescript/module/components/Card/Card.d.ts +5 -0
  400. package/lib/typescript/module/components/Card/Card.d.ts.map +1 -0
  401. package/lib/typescript/module/components/Card/CardContent.d.ts +5 -0
  402. package/lib/typescript/module/components/Card/CardContent.d.ts.map +1 -0
  403. package/lib/typescript/module/components/Card/CardFooter.d.ts +5 -0
  404. package/lib/typescript/module/components/Card/CardFooter.d.ts.map +1 -0
  405. package/lib/typescript/module/components/Card/CardHeader.d.ts +5 -0
  406. package/lib/typescript/module/components/Card/CardHeader.d.ts.map +1 -0
  407. package/lib/typescript/module/components/Card/CardImage.d.ts +5 -0
  408. package/lib/typescript/module/components/Card/CardImage.d.ts.map +1 -0
  409. package/lib/typescript/module/components/Card/index.d.ts +11 -0
  410. package/lib/typescript/module/components/Card/index.d.ts.map +1 -0
  411. package/lib/typescript/module/components/Card/templates/DealCard.d.ts +33 -0
  412. package/lib/typescript/module/components/Card/templates/DealCard.d.ts.map +1 -0
  413. package/lib/typescript/module/components/Card/templates/DealCardWithBackgroundImage.d.ts +38 -0
  414. package/lib/typescript/module/components/Card/templates/DealCardWithBackgroundImage.d.ts.map +1 -0
  415. package/lib/typescript/module/components/Card/templates/SimpleTrendingCard.d.ts +14 -0
  416. package/lib/typescript/module/components/Card/templates/SimpleTrendingCard.d.ts.map +1 -0
  417. package/lib/typescript/module/components/Card/types.d.ts +78 -0
  418. package/lib/typescript/module/components/Card/types.d.ts.map +1 -0
  419. package/lib/typescript/module/components/CloseIcon/CloseIcon.d.ts +16 -0
  420. package/lib/typescript/module/components/CloseIcon/CloseIcon.d.ts.map +1 -0
  421. package/lib/typescript/module/components/CloseIcon/index.d.ts +3 -0
  422. package/lib/typescript/module/components/CloseIcon/index.d.ts.map +1 -0
  423. package/lib/typescript/module/components/Filters/Filters.d.ts +74 -0
  424. package/lib/typescript/module/components/Filters/Filters.d.ts.map +1 -0
  425. package/lib/typescript/module/components/Filters/PointsRangeSelector.d.ts +29 -0
  426. package/lib/typescript/module/components/Filters/PointsRangeSelector.d.ts.map +1 -0
  427. package/lib/typescript/module/components/Filters/index.d.ts +5 -0
  428. package/lib/typescript/module/components/Filters/index.d.ts.map +1 -0
  429. package/lib/typescript/module/components/Input/Input.d.ts +23 -0
  430. package/lib/typescript/module/components/Input/Input.d.ts.map +1 -0
  431. package/lib/typescript/module/components/Input/index.d.ts +3 -0
  432. package/lib/typescript/module/components/Input/index.d.ts.map +1 -0
  433. package/lib/typescript/module/components/LockOverlay/LockOverlay.d.ts +16 -0
  434. package/lib/typescript/module/components/LockOverlay/LockOverlay.d.ts.map +1 -0
  435. package/lib/typescript/module/components/LockOverlay/index.d.ts +3 -0
  436. package/lib/typescript/module/components/LockOverlay/index.d.ts.map +1 -0
  437. package/lib/typescript/module/components/Popup/Popup.d.ts +38 -0
  438. package/lib/typescript/module/components/Popup/Popup.d.ts.map +1 -0
  439. package/lib/typescript/module/components/Popup/index.d.ts +3 -0
  440. package/lib/typescript/module/components/Popup/index.d.ts.map +1 -0
  441. package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts +26 -0
  442. package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts.map +1 -0
  443. package/lib/typescript/module/components/ProgressBar/index.d.ts +3 -0
  444. package/lib/typescript/module/components/ProgressBar/index.d.ts.map +1 -0
  445. package/lib/typescript/module/components/RedemptionOption/RedemptionOption.d.ts +24 -0
  446. package/lib/typescript/module/components/RedemptionOption/RedemptionOption.d.ts.map +1 -0
  447. package/lib/typescript/module/components/RedemptionOption/index.d.ts +3 -0
  448. package/lib/typescript/module/components/RedemptionOption/index.d.ts.map +1 -0
  449. package/lib/typescript/module/components/ScratchCard/ScratchCard.d.ts +20 -0
  450. package/lib/typescript/module/components/ScratchCard/ScratchCard.d.ts.map +1 -0
  451. package/lib/typescript/module/components/ScratchCard/ScratchCardContent.d.ts +8 -0
  452. package/lib/typescript/module/components/ScratchCard/ScratchCardContent.d.ts.map +1 -0
  453. package/lib/typescript/module/components/ScratchCard/index.d.ts +5 -0
  454. package/lib/typescript/module/components/ScratchCard/index.d.ts.map +1 -0
  455. package/lib/typescript/module/components/UnlockRewards/RewardItem.d.ts +25 -0
  456. package/lib/typescript/module/components/UnlockRewards/RewardItem.d.ts.map +1 -0
  457. package/lib/typescript/module/components/UnlockRewards/UnlockRewards.d.ts +59 -0
  458. package/lib/typescript/module/components/UnlockRewards/UnlockRewards.d.ts.map +1 -0
  459. package/lib/typescript/module/components/UnlockRewards/index.d.ts +5 -0
  460. package/lib/typescript/module/components/UnlockRewards/index.d.ts.map +1 -0
  461. package/lib/typescript/module/components/Wheel/Wheel.d.ts +34 -0
  462. package/lib/typescript/module/components/Wheel/Wheel.d.ts.map +1 -0
  463. package/lib/typescript/module/components/Wheel/index.d.ts +3 -0
  464. package/lib/typescript/module/components/Wheel/index.d.ts.map +1 -0
  465. package/lib/typescript/module/components/index.d.ts +15 -0
  466. package/lib/typescript/module/components/index.d.ts.map +1 -0
  467. package/lib/typescript/module/constants/BRANDS.d.ts +7 -0
  468. package/lib/typescript/module/constants/BRANDS.d.ts.map +1 -0
  469. package/lib/typescript/module/index.d.ts +3 -0
  470. package/lib/typescript/module/index.d.ts.map +1 -0
  471. package/lib/typescript/module/package.json +1 -0
  472. package/lib/typescript/module/theme/Colors.d.ts +28 -0
  473. package/lib/typescript/module/theme/Colors.d.ts.map +1 -0
  474. package/lib/typescript/module/theme/ThemeContext.d.ts +13 -0
  475. package/lib/typescript/module/theme/ThemeContext.d.ts.map +1 -0
  476. package/lib/typescript/module/theme/index.d.ts +3 -0
  477. package/lib/typescript/module/theme/index.d.ts.map +1 -0
  478. package/package.json +116 -0
  479. package/src/app/_layout.tsx +38 -0
  480. package/src/app/index.tsx +115 -0
  481. package/src/assets/components/BannerWithDetails.png +0 -0
  482. package/src/assets/components/DealCard-Horizontal.png +0 -0
  483. package/src/assets/components/DealCard-Vertical.png +0 -0
  484. package/src/assets/components/DealCard-floating.png +0 -0
  485. package/src/assets/components/DealCard-nested.png +0 -0
  486. package/src/assets/components/Filters.png +0 -0
  487. package/src/assets/components/Popup-1.png +0 -0
  488. package/src/assets/components/Popup-2.png +0 -0
  489. package/src/assets/components/Popup-3.png +0 -0
  490. package/src/assets/components/RedemptionOption-Horizontal.png +0 -0
  491. package/src/assets/components/RedemptionOption-Vertical.png +0 -0
  492. package/src/assets/components/SimpleBanner.png +0 -0
  493. package/src/assets/components/SimpleTrendingCard.png +0 -0
  494. package/src/assets/components/SimpleTrendingCardV2.png +0 -0
  495. package/src/assets/components/UnlockRewards-1.png +0 -0
  496. package/src/assets/components/UnlockRewards-2.png +0 -0
  497. package/src/assets/fonts/SpaceMono-Regular.ttf +0 -0
  498. package/src/assets/images/adaptive-icon.png +0 -0
  499. package/src/assets/images/face.jpg +0 -0
  500. package/src/assets/images/favicon.png +0 -0
  501. package/src/assets/images/giftvoucher.jpg +0 -0
  502. package/src/assets/images/icon.png +0 -0
  503. package/src/assets/images/insta.webp +0 -0
  504. package/src/assets/images/muse.jpg +0 -0
  505. package/src/assets/images/namshi-banner.png +0 -0
  506. package/src/assets/images/namshi.webp +0 -0
  507. package/src/assets/images/partial-react-logo.png +0 -0
  508. package/src/assets/images/pb-logo.jpg +0 -0
  509. package/src/assets/images/pb.jpg +0 -0
  510. package/src/assets/images/react-logo.png +0 -0
  511. package/src/assets/images/react-logo@2x.png +0 -0
  512. package/src/assets/images/react-logo@3x.png +0 -0
  513. package/src/assets/images/scratch_foreground.png +0 -0
  514. package/src/assets/images/splash-icon.png +0 -0
  515. package/src/assets/images/upgrade.png +0 -0
  516. package/src/components/Badges/Badge.tsx +81 -0
  517. package/src/components/Badges/README.md +98 -0
  518. package/src/components/Badges/index.ts +2 -0
  519. package/src/components/Banner/Banner.tsx +172 -0
  520. package/src/components/Banner/BannerWithDetails.tsx +133 -0
  521. package/src/components/Banner/README.md +101 -0
  522. package/src/components/Banner/index.ts +5 -0
  523. package/src/components/BrandIcon/BrandIcon.tsx +134 -0
  524. package/src/components/BrandIcon/index.ts +2 -0
  525. package/src/components/Card/Card.tsx +144 -0
  526. package/src/components/Card/CardContent.tsx +33 -0
  527. package/src/components/Card/CardFooter.tsx +33 -0
  528. package/src/components/Card/CardHeader.tsx +80 -0
  529. package/src/components/Card/CardImage.tsx +51 -0
  530. package/src/components/Card/index.ts +15 -0
  531. package/src/components/Card/templates/DealCard.tsx +255 -0
  532. package/src/components/Card/templates/DealCardWithBackgroundImage.tsx +273 -0
  533. package/src/components/Card/templates/README.md +233 -0
  534. package/src/components/Card/templates/SimpleTrendingCard.tsx +54 -0
  535. package/src/components/Card/types.ts +75 -0
  536. package/src/components/CloseIcon/CloseIcon.tsx +77 -0
  537. package/src/components/CloseIcon/index.ts +2 -0
  538. package/src/components/Filters/Filters.tsx +427 -0
  539. package/src/components/Filters/PointsRangeSelector.tsx +319 -0
  540. package/src/components/Filters/README.md +212 -0
  541. package/src/components/Filters/index.ts +4 -0
  542. package/src/components/Input/Input.tsx +218 -0
  543. package/src/components/Input/README.md +128 -0
  544. package/src/components/Input/index.ts +2 -0
  545. package/src/components/LockOverlay/LockOverlay.tsx +82 -0
  546. package/src/components/LockOverlay/index.ts +2 -0
  547. package/src/components/Popup/Popup.tsx +374 -0
  548. package/src/components/Popup/README.md +133 -0
  549. package/src/components/Popup/index.ts +2 -0
  550. package/src/components/ProgressBar/ProgressBar.tsx +157 -0
  551. package/src/components/ProgressBar/index.ts +2 -0
  552. package/src/components/RedemptionOption/README.md +148 -0
  553. package/src/components/RedemptionOption/RedemptionOption.tsx +158 -0
  554. package/src/components/RedemptionOption/index.ts +2 -0
  555. package/src/components/ScratchCard/README.md +119 -0
  556. package/src/components/ScratchCard/ScratchCard.tsx +190 -0
  557. package/src/components/ScratchCard/ScratchCardContent.tsx +25 -0
  558. package/src/components/ScratchCard/index.ts +4 -0
  559. package/src/components/UnlockRewards/README.md +187 -0
  560. package/src/components/UnlockRewards/RewardItem.tsx +172 -0
  561. package/src/components/UnlockRewards/UnlockRewards.tsx +293 -0
  562. package/src/components/UnlockRewards/index.ts +4 -0
  563. package/src/components/Wheel/README.md +141 -0
  564. package/src/components/Wheel/Wheel.tsx +374 -0
  565. package/src/components/Wheel/index.ts +2 -0
  566. package/src/components/index.ts +14 -0
  567. package/src/constants/BRANDS.ts +64 -0
  568. package/src/index.ts +2 -0
  569. package/src/theme/Colors.ts +107 -0
  570. package/src/theme/ThemeContext.tsx +46 -0
  571. package/src/theme/index.ts +2 -0
@@ -0,0 +1,212 @@
1
+ # Filters Component
2
+
3
+ A flexible, customizable bottom sheet filter component for React Native applications with support for sorting options, points range selection, brand filtering, and extensive styling options.
4
+
5
+ ![Filters Example](../../assets/components/Filters.png)
6
+
7
+ ## Basic Usage
8
+
9
+ ```jsx
10
+ import React from 'react';
11
+ import { View } from 'react-native';
12
+ import { Filters } from '@your-org/component-library';
13
+
14
+ const ExampleScreen = () => {
15
+ const sortOptions = [
16
+ { id: 1, name: 'Price: Low to High', value: 'price_asc' },
17
+ { id: 2, name: 'Price: High to Low', value: 'price_desc' },
18
+ ];
19
+
20
+ const brands = [
21
+ { id: '1', name: 'Brand A', logo: require('../assets/brandA.png') },
22
+ { id: '2', name: 'Brand B', logo: require('../assets/brandB.png') },
23
+ ];
24
+
25
+ const handleFilterApply = (result) => {
26
+ console.log('Applied filters:', result);
27
+ };
28
+
29
+ return (
30
+ <View style={{ flex: 1 }}>
31
+ <Filters
32
+ sortOptions={sortOptions}
33
+ brands={brands}
34
+ onActionButtonPress={handleFilterApply}
35
+ />
36
+ </View>
37
+ );
38
+ };
39
+
40
+ export default ExampleScreen;
41
+ ```
42
+
43
+ ## Props
44
+
45
+ The `Filters` component provides extensive customization options through its props.
46
+
47
+ ### Core Properties
48
+
49
+ | Prop | Type | Required | Default | Description |
50
+ |------|------|----------|---------|-------------|
51
+ | `onActionButtonPress` | `(result: FilterResult) => void` | ❌ | - | Function called when Apply Filter button is pressed |
52
+ | `sortOptions` | `SortOption[]` | ❌ | `[]` | Array of sorting options to display |
53
+ | `brands` | `Brand[]` | ❌ | `[]` | Array of brand options to display |
54
+ | `isRTL` | `boolean` | ❌ | `I18nManager.isRTL` | Whether to display in right-to-left mode |
55
+
56
+ ### Layout & Sections Properties
57
+
58
+ | Prop | Type | Required | Default | Description |
59
+ |------|------|----------|---------|-------------|
60
+ | `sortSectionTitle` | `string` | ❌ | `"Sort"` | Title for the sorting section |
61
+ | `pointsRangeSectionTitle` | `string` | ❌ | `"Points range"` | Title for the points range section |
62
+ | `brandSectionTitle` | `string` | ❌ | `"Brands"` | Title for the brands section |
63
+ | `showPointsRange` | `boolean` | ❌ | `true` | Whether to display the points range section |
64
+ | `headerTitleText` | `string` | ❌ | `"Filter"` | Text for the header title |
65
+ | `headerResetText` | `string` | ❌ | `"Reset All"` | Text for the reset button |
66
+ | `applyButtonText` | `string` | ❌ | `"Apply Filter"` | Text for the apply button |
67
+
68
+ ### Points Range Properties
69
+
70
+ | Prop | Type | Required | Default | Description |
71
+ |------|------|----------|---------|-------------|
72
+ | `rangeMinLimit` | `number` | ❌ | `0` | Minimum possible value for the range selector |
73
+ | `rangeMaxLimit` | `number` | ❌ | `1000` | Maximum possible value for the range selector |
74
+ | `rangeInitialMin` | `number` | ❌ | `0` | Initial minimum selected value |
75
+ | `rangeInitialMax` | `number` | ❌ | `1000` | Initial maximum selected value |
76
+
77
+ ### Points Range Styling Properties
78
+
79
+ | Prop | Type | Required | Default | Description |
80
+ |------|------|----------|---------|-------------|
81
+ | `pointsRangeContainerStyle` | `ViewStyle` | ❌ | - | Style for the main points range container |
82
+ | `pointsRangeInputsContainerStyle` | `ViewStyle` | ❌ | - | Style for the inputs container in points range selector |
83
+ | `pointsRangeCustomInputContainerStyle` | `ViewStyle` | ❌ | - | Style for the custom input containers |
84
+ | `pointsRangeCustomInputFieldStyle` | `ViewStyle` | ❌ | - | Style for the input fields |
85
+ | `pointsRangeSliderContainerStyle` | `ViewStyle` | ❌ | - | Style for the slider container |
86
+ | `pointsRangeMultiSliderContainerStyle` | `ViewStyle` | ❌ | - | Style for the multi-slider container |
87
+ | `pointsRangeTrackStyle` | `ViewStyle` | ❌ | - | Style for the slider track |
88
+ | `pointsRangeSelectedTrackStyle` | `ViewStyle` | ❌ | - | Style for the selected portion of the track |
89
+ | `pointsRangeUnselectedTrackStyle` | `ViewStyle` | ❌ | - | Style for the unselected portions of the track |
90
+ | `pointsRangeMarkerStyle` | `ViewStyle` | ❌ | - | Style for slider markers |
91
+ | `pointsRangeMarkerEnabledStyle` | `ViewStyle` | ❌ | - | Style for enabled slider markers |
92
+ | `pointsRangeMarkerDisabledStyle` | `ViewStyle` | ❌ | - | Style for disabled slider markers |
93
+ | `pointsRangeMarkerDotStyle` | `ViewStyle` | ❌ | - | Style for the marker dots |
94
+ | `pointsRangeInputProps` | `Object` | ❌ | - | Additional props to pass to the range input fields |
95
+ | `pointsRangeMultiSliderProps` | `Object` | ❌ | - | Additional props to pass to the MultiSlider component |
96
+
97
+ ### Brand Configuration Properties
98
+
99
+ | Prop | Type | Required | Default | Description |
100
+ |------|------|----------|---------|-------------|
101
+ | `brandActiveIcon` | `React.ReactNode` | ❌ | `<Ionicons name="checkmark-outline" />` | Icon to show for selected brands |
102
+ | `brandActiveIconStyle` | `ViewStyle` | ❌ | - | Style for the active brand icon |
103
+
104
+ ### Bottom Sheet Properties
105
+
106
+ | Prop | Type | Required | Default | Description |
107
+ |------|------|----------|---------|-------------|
108
+ | `bottomSheetIndex` | `number` | ❌ | `0` | Initial index for the bottom sheet |
109
+ | `snapPoints` | `string[]` | ❌ | `["50%", "90%"]` | Snap points for the bottom sheet |
110
+ | `handleIndicatorStyle` | `ViewStyle` | ❌ | - | Style for the bottom sheet handle indicator |
111
+
112
+ ### Style Customization Properties
113
+
114
+ | Prop | Type | Required | Default | Description |
115
+ |------|------|----------|---------|-------------|
116
+ | `containerStyle` | `ViewStyle` | ❌ | - | Style for the main container |
117
+ | `headerStyle` | `ViewStyle` | ❌ | - | Style for the header |
118
+ | `titleStyle` | `TextStyle` | ❌ | - | Style for the header title |
119
+ | `resetTextStyle` | `TextStyle` | ❌ | - | Style for the reset text |
120
+ | `sectionStyle` | `ViewStyle` | ❌ | - | Style for all filter sections |
121
+ | `sortSectionStyle` | `ViewStyle` | ❌ | - | Style specifically for the sort section |
122
+ | `sectionTitleStyle` | `TextStyle` | ❌ | - | Style for section titles |
123
+ | `optionRowStyle` | `ViewStyle` | ❌ | - | Style for option rows in the sort section |
124
+ | `optionTextStyle` | `TextStyle` | ❌ | - | Style for option text in the sort section |
125
+ | `checkboxColor` | `string` | ❌ | `theme.secondary` | Color for checkboxes |
126
+ | `brandContainerStyle` | `ViewStyle` | ❌ | - | Style for the brands grid container |
127
+ | `applyButtonStyle` | `ViewStyle` | ❌ | - | Style for the apply button |
128
+ | `applyButtonTextStyle` | `TextStyle` | ❌ | - | Style for the apply button text |
129
+ | `bottomSheetStyle` | `ViewStyle` | ❌ | - | Style for the bottom sheet |
130
+
131
+ ## Types
132
+
133
+ ```typescript
134
+ type SortOption = {
135
+ name: string;
136
+ value: string;
137
+ id: number;
138
+ };
139
+
140
+ type Brand = {
141
+ id: string;
142
+ name: string;
143
+ logo: ImageRequireSource;
144
+ };
145
+
146
+ type FilterResult = {
147
+ sort: SortOption[];
148
+ pointsRange: { min: number; max: number };
149
+ selectedBrands: Brand[];
150
+ };
151
+ ```
152
+
153
+ ## Examples
154
+
155
+ ### Basic Filter with Sort Options Only
156
+
157
+ ```jsx
158
+ <Filters
159
+ sortOptions={[
160
+ { id: 1, name: 'Newest First', value: 'newest' },
161
+ { id: 2, name: 'Oldest First', value: 'oldest' },
162
+ { id: 3, name: 'Highest Rated', value: 'rated_desc' }
163
+ ]}
164
+ showPointsRange={false}
165
+ onActionButtonPress={(result) => handleSort(result.sort)}
166
+ />
167
+ ```
168
+
169
+ ### Points Range Filter with Custom Limits
170
+
171
+ ```jsx
172
+ <Filters
173
+ showPointsRange={true}
174
+ rangeMinLimit={0}
175
+ rangeMaxLimit={5000}
176
+ rangeInitialMin={100}
177
+ rangeInitialMax={2000}
178
+ pointsRangeSectionTitle="Price Range"
179
+ onActionButtonPress={(result) => handlePriceRange(result.pointsRange)}
180
+ />
181
+ ```
182
+
183
+ ### Brand Selection with Custom Styling
184
+
185
+ ```jsx
186
+ <Filters
187
+ brands={[
188
+ { id: 'nike', name: 'Nike', logo: require('../assets/nike.png') },
189
+ { id: 'adidas', name: 'Adidas', logo: require('../assets/adidas.png') },
190
+ { id: 'puma', name: 'Puma', logo: require('../assets/puma.png') }
191
+ ]}
192
+ brandSectionTitle="Select Brands"
193
+ brandContainerStyle={{ justifyContent: 'space-between' }}
194
+ brandActiveIconStyle={{ backgroundColor: '#E0F7FA' }}
195
+ onActionButtonPress={(result) => handleBrandFilter(result.selectedBrands)}
196
+ />
197
+ ```
198
+
199
+ ### RTL Support with Custom Headers
200
+
201
+ ```jsx
202
+ <Filters
203
+ isRTL={true}
204
+ headerTitleText="فلتر"
205
+ headerResetText="إعادة تعيين الكل"
206
+ applyButtonText="تطبيق الفلتر"
207
+ sortSectionTitle="ترتيب"
208
+ pointsRangeSectionTitle="نطاق النقاط"
209
+ brandSectionTitle="العلامات التجارية"
210
+ onActionButtonPress={handleArabicFilters}
211
+ />
212
+ ```
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ export { default } from "./Filters.js";
4
+ export { default as PointsRangeSelector } from "./PointsRangeSelector.js";
5
+ export * from "./Filters.js";
6
+ export * from "./PointsRangeSelector.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["default","PointsRangeSelector"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Filters/index.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,cAAW;AACnC,SAASA,OAAO,IAAIC,mBAAmB,QAAO,0BAAuB;AACrE,cAAc,cAAW;AACzB,cAAc,0BAAuB","ignoreList":[]}
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+
3
+ import React, { forwardRef, useState } from 'react';
4
+ import { TextInput, Text, View, StyleSheet, TouchableOpacity } from 'react-native';
5
+ import { useTheme } from "../../theme/index.js";
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ const CustomInput = /*#__PURE__*/forwardRef(({
8
+ label,
9
+ error,
10
+ helper,
11
+ leftIcon,
12
+ rightIcon,
13
+ onRightIconPress,
14
+ containerStyle,
15
+ labelStyle,
16
+ inputStyle,
17
+ inputContainerStyle,
18
+ errorStyle,
19
+ helperStyle,
20
+ onChangeText,
21
+ onBlur,
22
+ onFocus,
23
+ isRTL = false,
24
+ ...rest
25
+ }, ref) => {
26
+ const theme = useTheme();
27
+ const [isFocused, setIsFocused] = useState(false);
28
+ const handleFocus = () => {
29
+ setIsFocused(true);
30
+ onFocus && onFocus();
31
+ };
32
+ const handleBlur = () => {
33
+ setIsFocused(false);
34
+ onBlur && onBlur();
35
+ };
36
+
37
+ // Define styles using a function to access theme
38
+ const styles = createStyles(theme);
39
+ return /*#__PURE__*/_jsxs(View, {
40
+ style: [styles.container, containerStyle],
41
+ children: [label && /*#__PURE__*/_jsx(Text, {
42
+ style: [styles.label, {
43
+ textAlign: isRTL ? 'right' : 'left'
44
+ }, labelStyle],
45
+ children: label
46
+ }), /*#__PURE__*/_jsxs(View, {
47
+ style: [styles.inputContainer, inputContainerStyle, isFocused && styles.focusedInput, error && styles.errorInput, isRTL && {
48
+ flexDirection: 'row-reverse'
49
+ }],
50
+ children: [leftIcon && /*#__PURE__*/_jsx(View, {
51
+ style: [styles.leftIcon, isRTL && {
52
+ paddingRight: 12,
53
+ paddingLeft: 0
54
+ }],
55
+ children: leftIcon
56
+ }), /*#__PURE__*/_jsx(TextInput, {
57
+ ref: ref,
58
+ style: [styles.input, leftIcon ? styles.inputWithLeftIcon : undefined, rightIcon ? styles.inputWithRightIcon : undefined, {
59
+ textAlign: isRTL ? 'right' : 'left'
60
+ }, inputStyle],
61
+ onChangeText: onChangeText,
62
+ onFocus: handleFocus,
63
+ onBlur: handleBlur,
64
+ placeholderTextColor: theme.placeholderText // Use placeholderText
65
+ ,
66
+ ...rest
67
+ }), rightIcon && /*#__PURE__*/_jsx(TouchableOpacity, {
68
+ style: [styles.rightIcon, isRTL && {
69
+ paddingLeft: 12,
70
+ paddingRight: 0
71
+ }],
72
+ onPress: onRightIconPress,
73
+ disabled: !onRightIconPress,
74
+ children: rightIcon
75
+ })]
76
+ }), error ? /*#__PURE__*/_jsx(Text, {
77
+ style: [styles.error, {
78
+ textAlign: isRTL ? 'right' : 'left'
79
+ }, errorStyle],
80
+ children: error
81
+ }) : helper ? /*#__PURE__*/_jsx(Text, {
82
+ style: [styles.helper, {
83
+ textAlign: isRTL ? 'right' : 'left'
84
+ }, helperStyle],
85
+ children: helper
86
+ }) : null]
87
+ });
88
+ });
89
+
90
+ // Function to create themed styles
91
+ const createStyles = theme => StyleSheet.create({
92
+ container: {},
93
+ label: {
94
+ fontSize: 14,
95
+ fontWeight: '500',
96
+ marginBottom: 6,
97
+ color: theme.labelText // Use labelText
98
+ },
99
+ inputContainer: {
100
+ flexDirection: 'row',
101
+ borderWidth: 1,
102
+ borderColor: theme.border,
103
+ // Use border
104
+ borderRadius: 8,
105
+ backgroundColor: theme.inputBackground,
106
+ // Use inputBackground
107
+ alignItems: 'center',
108
+ minHeight: 48
109
+ },
110
+ focusedInput: {
111
+ borderColor: theme.primary // Use primary for focus indication
112
+ },
113
+ errorInput: {
114
+ borderColor: theme.error // Correctly uses error
115
+ },
116
+ input: {
117
+ flex: 1,
118
+ paddingHorizontal: 12,
119
+ fontSize: 16,
120
+ color: theme.inputText,
121
+ // Use inputText
122
+ backgroundColor: 'transparent' // Keep transparent
123
+ },
124
+ inputWithLeftIcon: {
125
+ paddingLeft: 8
126
+ },
127
+ inputWithRightIcon: {
128
+ paddingRight: 8
129
+ },
130
+ leftIcon: {
131
+ paddingLeft: 12
132
+ },
133
+ rightIcon: {
134
+ paddingRight: 12
135
+ },
136
+ error: {
137
+ fontSize: 12,
138
+ color: theme.error,
139
+ // Correctly uses error
140
+ marginTop: 4
141
+ },
142
+ helper: {
143
+ fontSize: 12,
144
+ color: theme.helper,
145
+ // Correctly uses helper
146
+ marginTop: 4
147
+ }
148
+ });
149
+ export default CustomInput;
150
+ //# sourceMappingURL=Input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","forwardRef","useState","TextInput","Text","View","StyleSheet","TouchableOpacity","useTheme","jsx","_jsx","jsxs","_jsxs","CustomInput","label","error","helper","leftIcon","rightIcon","onRightIconPress","containerStyle","labelStyle","inputStyle","inputContainerStyle","errorStyle","helperStyle","onChangeText","onBlur","onFocus","isRTL","rest","ref","theme","isFocused","setIsFocused","handleFocus","handleBlur","styles","createStyles","style","container","children","textAlign","inputContainer","focusedInput","errorInput","flexDirection","paddingRight","paddingLeft","input","inputWithLeftIcon","undefined","inputWithRightIcon","placeholderTextColor","placeholderText","onPress","disabled","create","fontSize","fontWeight","marginBottom","color","labelText","borderWidth","borderColor","border","borderRadius","backgroundColor","inputBackground","alignItems","minHeight","primary","flex","paddingHorizontal","inputText","marginTop"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Input/Input.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,128 @@
1
+ # CustomInput Component
2
+
3
+ A flexible, themeable text input component for React Native applications with support for labels, icons, error messages, and helper text.
4
+
5
+ ## Basic Usage
6
+
7
+ ```jsx
8
+ import React, { useState } from 'react';
9
+ import { View } from 'react-native';
10
+ import { CustomInput } from '@your-org/component-library';
11
+
12
+ const MyForm = () => {
13
+ const [name, setName] = useState('');
14
+
15
+ return (
16
+ <View style={{ padding: 16 }}>
17
+ <CustomInput
18
+ label="Full Name"
19
+ placeholder="Enter your full name"
20
+ value={name}
21
+ onChangeText={setName}
22
+ />
23
+ </View>
24
+ );
25
+ };
26
+
27
+ export default MyForm;
28
+ ```
29
+
30
+ ## Props
31
+
32
+ The `CustomInput` component extends React Native's `TextInputProps` (except for the `style` prop which is replaced with more specific styling props) and adds the following:
33
+
34
+ ### Core Properties
35
+
36
+ | Prop | Type | Required | Default | Description |
37
+ |------|------|----------|---------|-------------|
38
+ | `label` | `string` | ❌ | - | Text to display above the input field |
39
+ | `error` | `string` | ❌ | - | Error message to display below the input (turns border red) |
40
+ | `helper` | `string` | ❌ | - | Helper text to display below the input (hidden if error is present) |
41
+
42
+ ### Icon Properties
43
+
44
+ | Prop | Type | Required | Default | Description |
45
+ |------|------|----------|---------|-------------|
46
+ | `leftIcon` | `React.ReactNode` | ❌ | - | Icon component to display on the left side of the input |
47
+ | `rightIcon` | `React.ReactNode` | ❌ | - | Icon component to display on the right side of the input |
48
+ | `onRightIconPress` | `() => void` | ❌ | - | Function to call when the right icon is pressed |
49
+
50
+ ### Style Customization
51
+
52
+ | Prop | Type | Required | Default | Description |
53
+ |------|------|----------|---------|-------------|
54
+ | `containerStyle` | `StyleProp<ViewStyle>` | ❌ | - | Style for the outer container |
55
+ | `labelStyle` | `StyleProp<TextStyle>` | ❌ | - | Style for the label text |
56
+ | `inputStyle` | `StyleProp<TextStyle>` | ❌ | - | Style for the text input itself |
57
+ | `inputContainerStyle` | `StyleProp<ViewStyle>` | ❌ | - | Style for the container around the input and icons |
58
+ | `errorStyle` | `StyleProp<TextStyle>` | ❌ | - | Style for the error message text |
59
+ | `helperStyle` | `StyleProp<TextStyle>` | ❌ | - | Style for the helper text |
60
+
61
+ ### Behavior Props
62
+
63
+ | Prop | Type | Required | Default | Description |
64
+ |------|------|----------|---------|-------------|
65
+ | `onChangeText` | `(text: string) => void` | ❌ | - | Function to call when text changes |
66
+ | `onBlur` | `() => void` | ❌ | - | Function to call when input loses focus |
67
+ | `onFocus` | `() => void` | ❌ | - | Function to call when input gains focus |
68
+
69
+ ## Examples
70
+
71
+ ### Basic Input with Label
72
+
73
+ ```jsx
74
+ <CustomInput
75
+ label="Username"
76
+ placeholder="Enter your username"
77
+ onChangeText={(text) => console.log(text)}
78
+ />
79
+ ```
80
+
81
+ ### Input with Error State
82
+
83
+ ```jsx
84
+ <CustomInput
85
+ label="Email"
86
+ placeholder="Enter your email"
87
+ value={email}
88
+ onChangeText={setEmail}
89
+ error={!isValidEmail(email) ? "Please enter a valid email address" : ""}
90
+ />
91
+ ```
92
+
93
+ ### Input with Helper Text
94
+
95
+ ```jsx
96
+ <CustomInput
97
+ label="Password"
98
+ placeholder="Enter your password"
99
+ secureTextEntry
100
+ helper="Password must be at least 8 characters long"
101
+ onChangeText={setPassword}
102
+ />
103
+ ```
104
+
105
+ ### Input with Icons
106
+
107
+ ```jsx
108
+ import { Ionicons } from '@expo/vector-icons';
109
+
110
+ // Password input with toggle icon
111
+ const [showPassword, setShowPassword] = useState(false);
112
+
113
+ <CustomInput
114
+ label="Password"
115
+ placeholder="Enter your password"
116
+ secureTextEntry={!showPassword}
117
+ leftIcon={<Ionicons name="lock-closed" size={20} color="#888" />}
118
+ rightIcon={
119
+ <Ionicons
120
+ name={showPassword ? "eye-off" : "eye"}
121
+ size={20}
122
+ color="#888"
123
+ />
124
+ }
125
+ onRightIconPress={() => setShowPassword(!showPassword)}
126
+ onChangeText={setPassword}
127
+ />
128
+ ```
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export { default as Input } from "./Input.js";
4
+ export * from "./Input.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["default","Input"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/Input/index.ts"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,KAAK,QAAO,YAAS;AACzC,cAAc,YAAS","ignoreList":[]}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { Text, StyleSheet, TouchableOpacity } from 'react-native';
5
+ import { Ionicons } from '@expo/vector-icons';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ const LockOverlay = ({
8
+ visible = true,
9
+ containerStyle,
10
+ iconStyle,
11
+ textStyle,
12
+ text = 'Unlock',
13
+ iconSize = 50,
14
+ iconColor = 'white',
15
+ overlayOpacity = 0.7,
16
+ contentVerticalAlign = "center",
17
+ ...touchableProps
18
+ }) => {
19
+ if (!visible) return null;
20
+ return /*#__PURE__*/_jsxs(TouchableOpacity, {
21
+ style: [styles.overlay, {
22
+ backgroundColor: `rgba(0, 0, 0, ${overlayOpacity})`
23
+ }, contentVerticalAlign == "top" && {
24
+ justifyContent: "flex-start",
25
+ paddingTop: 50
26
+ }, containerStyle],
27
+ activeOpacity: 0.8,
28
+ ...touchableProps,
29
+ children: [/*#__PURE__*/_jsx(Ionicons, {
30
+ name: "lock-closed",
31
+ size: iconSize,
32
+ color: iconColor
33
+ // style={iconStyle}
34
+ }), /*#__PURE__*/_jsx(Text, {
35
+ style: [styles.text, {
36
+ color: iconColor
37
+ }, textStyle],
38
+ children: text
39
+ })]
40
+ });
41
+ };
42
+ const styles = StyleSheet.create({
43
+ overlay: {
44
+ position: 'absolute',
45
+ top: 0,
46
+ left: 0,
47
+ right: 0,
48
+ bottom: 0,
49
+ justifyContent: 'center',
50
+ alignItems: 'center',
51
+ zIndex: 999
52
+ },
53
+ text: {
54
+ fontSize: 20,
55
+ fontWeight: 'bold',
56
+ marginTop: 12
57
+ }
58
+ });
59
+ export default LockOverlay;
60
+ //# sourceMappingURL=LockOverlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Text","StyleSheet","TouchableOpacity","Ionicons","jsx","_jsx","jsxs","_jsxs","LockOverlay","visible","containerStyle","iconStyle","textStyle","text","iconSize","iconColor","overlayOpacity","contentVerticalAlign","touchableProps","style","styles","overlay","backgroundColor","justifyContent","paddingTop","activeOpacity","children","name","size","color","create","position","top","left","right","bottom","alignItems","zIndex","fontSize","fontWeight","marginTop"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/LockOverlay/LockOverlay.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAEEC,IAAI,EACJC,UAAU,EAGVC,gBAAgB,QAEX,cAAc;AAErB,SAASC,QAAQ,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAc9C,MAAMC,WAAuC,GAAGA,CAAC;EAC/CC,OAAO,GAAG,IAAI;EACdC,cAAc;EACdC,SAAS;EACTC,SAAS;EACTC,IAAI,GAAG,QAAQ;EACfC,QAAQ,GAAG,EAAE;EACbC,SAAS,GAAG,OAAO;EACnBC,cAAc,GAAG,GAAG;EACpBC,oBAAoB,GAAG,QAAQ;EAC/B,GAAGC;AACL,CAAC,KAAK;EACJ,IAAI,CAACT,OAAO,EAAE,OAAO,IAAI;EAEzB,oBACEF,KAAA,CAACL,gBAAgB;IACfiB,KAAK,EAAE,CACLC,MAAM,CAACC,OAAO,EACd;MAAEC,eAAe,EAAE,iBAAiBN,cAAc;IAAI,CAAC,EACvDC,oBAAoB,IAAI,KAAK,IAAI;MAACM,cAAc,EAAC,YAAY;MAAEC,UAAU,EAAE;IAAE,CAAC,EAC9Ed,cAAc,CACd;IACFe,aAAa,EAAE,GAAI;IAAA,GACfP,cAAc;IAAAQ,QAAA,gBAElBrB,IAAA,CAACF,QAAQ;MACPwB,IAAI,EAAC,aAAa;MAClBC,IAAI,EAAEd,QAAS;MACfe,KAAK,EAAEd;MACP;IAAA,CACD,CAAC,eACFV,IAAA,CAACL,IAAI;MAACmB,KAAK,EAAE,CAACC,MAAM,CAACP,IAAI,EAAE;QAAEgB,KAAK,EAAEd;MAAU,CAAC,EAAEH,SAAS,CAAE;MAAAc,QAAA,EACzDb;IAAI,CACD,CAAC;EAAA,CACS,CAAC;AAEvB,CAAC;AAED,MAAMO,MAAM,GAAGnB,UAAU,CAAC6B,MAAM,CAAC;EAC/BT,OAAO,EAAE;IACPU,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTZ,cAAc,EAAE,QAAQ;IACxBa,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE;EACV,CAAC;EACDxB,IAAI,EAAE;IACJyB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBC,SAAS,EAAE;EACb;AACF,CAAC,CAAC;AAEF,eAAehC,WAAW","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export { default as LockOverlay } from "./LockOverlay.js";
4
+ export * from "./LockOverlay.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["default","LockOverlay"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/LockOverlay/index.ts"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,WAAW,QAAO,kBAAe;AACrD,cAAc,kBAAe","ignoreList":[]}