@burdenoff/microfe-housingvista 2026.510.105

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 (984) hide show
  1. package/README.md +12 -0
  2. package/dist/_virtual/_rolldown/runtime.js +20 -0
  3. package/dist/generated/global-operations.d.ts +2 -0
  4. package/dist/generated/global-operations.d.ts.map +1 -0
  5. package/dist/generated/global-types.d.ts +20716 -0
  6. package/dist/generated/global-types.d.ts.map +1 -0
  7. package/dist/generated/wspace-operations.d.ts +2 -0
  8. package/dist/generated/wspace-operations.d.ts.map +1 -0
  9. package/dist/generated/wspace-types.d.ts +53363 -0
  10. package/dist/generated/wspace-types.d.ts.map +1 -0
  11. package/dist/housingvista/HousingVistaRoot.d.ts +5 -0
  12. package/dist/housingvista/HousingVistaRoot.d.ts.map +1 -0
  13. package/dist/housingvista/HousingVistaRoot.js +186 -0
  14. package/dist/housingvista/HousingVistaRoot.js.map +1 -0
  15. package/dist/housingvista/HousingVistaRoutes.d.ts +7 -0
  16. package/dist/housingvista/HousingVistaRoutes.d.ts.map +1 -0
  17. package/dist/housingvista/HousingVistaRoutes.js +118 -0
  18. package/dist/housingvista/HousingVistaRoutes.js.map +1 -0
  19. package/dist/housingvista/components/Breadcrumbs.d.ts +13 -0
  20. package/dist/housingvista/components/Breadcrumbs.d.ts.map +1 -0
  21. package/dist/housingvista/components/Breadcrumbs.js +31 -0
  22. package/dist/housingvista/components/Breadcrumbs.js.map +1 -0
  23. package/dist/housingvista/components/ChartCard.d.ts +12 -0
  24. package/dist/housingvista/components/ChartCard.d.ts.map +1 -0
  25. package/dist/housingvista/components/ChartCard.js +23 -0
  26. package/dist/housingvista/components/ChartCard.js.map +1 -0
  27. package/dist/housingvista/components/DataTable.d.ts +24 -0
  28. package/dist/housingvista/components/DataTable.d.ts.map +1 -0
  29. package/dist/housingvista/components/DataTable.js +126 -0
  30. package/dist/housingvista/components/DataTable.js.map +1 -0
  31. package/dist/housingvista/components/EmptyState.d.ts +12 -0
  32. package/dist/housingvista/components/EmptyState.d.ts.map +1 -0
  33. package/dist/housingvista/components/EmptyState.js +29 -0
  34. package/dist/housingvista/components/EmptyState.js.map +1 -0
  35. package/dist/housingvista/components/ErrorBoundary.d.ts +19 -0
  36. package/dist/housingvista/components/ErrorBoundary.d.ts.map +1 -0
  37. package/dist/housingvista/components/ErrorBoundary.js +52 -0
  38. package/dist/housingvista/components/ErrorBoundary.js.map +1 -0
  39. package/dist/housingvista/components/FilterBar.d.ts +13 -0
  40. package/dist/housingvista/components/FilterBar.d.ts.map +1 -0
  41. package/dist/housingvista/components/FilterBar.js +31 -0
  42. package/dist/housingvista/components/FilterBar.js.map +1 -0
  43. package/dist/housingvista/components/LoadingSkeleton.d.ts +10 -0
  44. package/dist/housingvista/components/LoadingSkeleton.d.ts.map +1 -0
  45. package/dist/housingvista/components/LoadingSkeleton.js +1 -0
  46. package/dist/housingvista/components/Modal.d.ts +14 -0
  47. package/dist/housingvista/components/Modal.d.ts.map +1 -0
  48. package/dist/housingvista/components/Modal.js +3 -0
  49. package/dist/housingvista/components/PageLayout.d.ts +12 -0
  50. package/dist/housingvista/components/PageLayout.d.ts.map +1 -0
  51. package/dist/housingvista/components/PageLayout.js +23 -0
  52. package/dist/housingvista/components/PageLayout.js.map +1 -0
  53. package/dist/housingvista/components/PropertyCard.d.ts +21 -0
  54. package/dist/housingvista/components/PropertyCard.d.ts.map +1 -0
  55. package/dist/housingvista/components/PropertyCard.js +115 -0
  56. package/dist/housingvista/components/PropertyCard.js.map +1 -0
  57. package/dist/housingvista/components/StatCard.d.ts +16 -0
  58. package/dist/housingvista/components/StatCard.d.ts.map +1 -0
  59. package/dist/housingvista/components/StatCard.js +53 -0
  60. package/dist/housingvista/components/StatCard.js.map +1 -0
  61. package/dist/housingvista/components/StatusBadge.d.ts +12 -0
  62. package/dist/housingvista/components/StatusBadge.d.ts.map +1 -0
  63. package/dist/housingvista/components/StatusBadge.js +25 -0
  64. package/dist/housingvista/components/StatusBadge.js.map +1 -0
  65. package/dist/housingvista/components/Toast.d.ts +21 -0
  66. package/dist/housingvista/components/Toast.d.ts.map +1 -0
  67. package/dist/housingvista/components/Toast.js +3 -0
  68. package/dist/housingvista/components/index.d.ts +17 -0
  69. package/dist/housingvista/components/index.d.ts.map +1 -0
  70. package/dist/housingvista/components/index.js +13 -0
  71. package/dist/housingvista/context/HousingVistaContext.d.ts +15 -0
  72. package/dist/housingvista/context/HousingVistaContext.d.ts.map +1 -0
  73. package/dist/housingvista/context/HousingVistaContext.js +28 -0
  74. package/dist/housingvista/context/HousingVistaContext.js.map +1 -0
  75. package/dist/housingvista/hooks/index.d.ts +103 -0
  76. package/dist/housingvista/hooks/index.d.ts.map +1 -0
  77. package/dist/housingvista/hooks/index.js +434 -0
  78. package/dist/housingvista/hooks/index.js.map +1 -0
  79. package/dist/housingvista/hooks/useToast.d.ts +13 -0
  80. package/dist/housingvista/hooks/useToast.d.ts.map +1 -0
  81. package/dist/housingvista/index.d.ts +9 -0
  82. package/dist/housingvista/index.d.ts.map +1 -0
  83. package/dist/housingvista/index.js +3 -0
  84. package/dist/housingvista/pages/HomePage.d.ts +7 -0
  85. package/dist/housingvista/pages/HomePage.d.ts.map +1 -0
  86. package/dist/housingvista/pages/HomePage.js +226 -0
  87. package/dist/housingvista/pages/HomePage.js.map +1 -0
  88. package/dist/housingvista/pages/amc/AMCManagementPage.d.ts +2 -0
  89. package/dist/housingvista/pages/amc/AMCManagementPage.d.ts.map +1 -0
  90. package/dist/housingvista/pages/amc/AMCManagementPage.js +248 -0
  91. package/dist/housingvista/pages/amc/AMCManagementPage.js.map +1 -0
  92. package/dist/housingvista/pages/analytics/AnalyticsPage.d.ts +2 -0
  93. package/dist/housingvista/pages/analytics/AnalyticsPage.d.ts.map +1 -0
  94. package/dist/housingvista/pages/analytics/AnalyticsPage.js +320 -0
  95. package/dist/housingvista/pages/analytics/AnalyticsPage.js.map +1 -0
  96. package/dist/housingvista/pages/assets/AssetManagementPage.d.ts +2 -0
  97. package/dist/housingvista/pages/assets/AssetManagementPage.d.ts.map +1 -0
  98. package/dist/housingvista/pages/assets/AssetManagementPage.js +273 -0
  99. package/dist/housingvista/pages/assets/AssetManagementPage.js.map +1 -0
  100. package/dist/housingvista/pages/chat/ChatPage.d.ts +2 -0
  101. package/dist/housingvista/pages/chat/ChatPage.d.ts.map +1 -0
  102. package/dist/housingvista/pages/chat/ChatPage.js +218 -0
  103. package/dist/housingvista/pages/chat/ChatPage.js.map +1 -0
  104. package/dist/housingvista/pages/finance/HomeLoansPage.d.ts +2 -0
  105. package/dist/housingvista/pages/finance/HomeLoansPage.d.ts.map +1 -0
  106. package/dist/housingvista/pages/finance/HomeLoansPage.js +306 -0
  107. package/dist/housingvista/pages/finance/HomeLoansPage.js.map +1 -0
  108. package/dist/housingvista/pages/investments/InvestmentDetailPage.d.ts +2 -0
  109. package/dist/housingvista/pages/investments/InvestmentDetailPage.d.ts.map +1 -0
  110. package/dist/housingvista/pages/investments/InvestmentDetailPage.js +473 -0
  111. package/dist/housingvista/pages/investments/InvestmentDetailPage.js.map +1 -0
  112. package/dist/housingvista/pages/investments/InvestmentsPage.d.ts +2 -0
  113. package/dist/housingvista/pages/investments/InvestmentsPage.d.ts.map +1 -0
  114. package/dist/housingvista/pages/investments/InvestmentsPage.js +268 -0
  115. package/dist/housingvista/pages/investments/InvestmentsPage.js.map +1 -0
  116. package/dist/housingvista/pages/legal/LegalPage.d.ts +2 -0
  117. package/dist/housingvista/pages/legal/LegalPage.d.ts.map +1 -0
  118. package/dist/housingvista/pages/legal/LegalPage.js +188 -0
  119. package/dist/housingvista/pages/legal/LegalPage.js.map +1 -0
  120. package/dist/housingvista/pages/market/AreaInsightsPage.d.ts +2 -0
  121. package/dist/housingvista/pages/market/AreaInsightsPage.d.ts.map +1 -0
  122. package/dist/housingvista/pages/market/AreaInsightsPage.js +278 -0
  123. package/dist/housingvista/pages/market/AreaInsightsPage.js.map +1 -0
  124. package/dist/housingvista/pages/market/MarketAnalyticsPage.d.ts +2 -0
  125. package/dist/housingvista/pages/market/MarketAnalyticsPage.d.ts.map +1 -0
  126. package/dist/housingvista/pages/market/MarketAnalyticsPage.js +296 -0
  127. package/dist/housingvista/pages/market/MarketAnalyticsPage.js.map +1 -0
  128. package/dist/housingvista/pages/marketplace/MarketplacePage.d.ts +2 -0
  129. package/dist/housingvista/pages/marketplace/MarketplacePage.d.ts.map +1 -0
  130. package/dist/housingvista/pages/marketplace/MarketplacePage.js +201 -0
  131. package/dist/housingvista/pages/marketplace/MarketplacePage.js.map +1 -0
  132. package/dist/housingvista/pages/notifications/NotificationsPage.d.ts +2 -0
  133. package/dist/housingvista/pages/notifications/NotificationsPage.d.ts.map +1 -0
  134. package/dist/housingvista/pages/notifications/NotificationsPage.js +139 -0
  135. package/dist/housingvista/pages/notifications/NotificationsPage.js.map +1 -0
  136. package/dist/housingvista/pages/properties/AddPropertyPage.d.ts +8 -0
  137. package/dist/housingvista/pages/properties/AddPropertyPage.d.ts.map +1 -0
  138. package/dist/housingvista/pages/properties/AddPropertyPage.js +751 -0
  139. package/dist/housingvista/pages/properties/AddPropertyPage.js.map +1 -0
  140. package/dist/housingvista/pages/properties/PropertiesPage.d.ts +7 -0
  141. package/dist/housingvista/pages/properties/PropertiesPage.d.ts.map +1 -0
  142. package/dist/housingvista/pages/properties/PropertiesPage.js +385 -0
  143. package/dist/housingvista/pages/properties/PropertiesPage.js.map +1 -0
  144. package/dist/housingvista/pages/properties/PropertyDetailPage.d.ts +8 -0
  145. package/dist/housingvista/pages/properties/PropertyDetailPage.d.ts.map +1 -0
  146. package/dist/housingvista/pages/properties/PropertyDetailPage.js +670 -0
  147. package/dist/housingvista/pages/properties/PropertyDetailPage.js.map +1 -0
  148. package/dist/housingvista/pages/rental/RentalManagementPage.d.ts +2 -0
  149. package/dist/housingvista/pages/rental/RentalManagementPage.d.ts.map +1 -0
  150. package/dist/housingvista/pages/rental/RentalManagementPage.js +296 -0
  151. package/dist/housingvista/pages/rental/RentalManagementPage.js.map +1 -0
  152. package/dist/housingvista/pages/settings/ProfilePage.d.ts +2 -0
  153. package/dist/housingvista/pages/settings/ProfilePage.d.ts.map +1 -0
  154. package/dist/housingvista/pages/settings/ProfilePage.js +172 -0
  155. package/dist/housingvista/pages/settings/ProfilePage.js.map +1 -0
  156. package/dist/housingvista/pages/settings/SettingsPage.d.ts +2 -0
  157. package/dist/housingvista/pages/settings/SettingsPage.d.ts.map +1 -0
  158. package/dist/housingvista/pages/settings/SettingsPage.js +195 -0
  159. package/dist/housingvista/pages/settings/SettingsPage.js.map +1 -0
  160. package/dist/housingvista/pages/transactions/TransactionDetailPage.d.ts +8 -0
  161. package/dist/housingvista/pages/transactions/TransactionDetailPage.d.ts.map +1 -0
  162. package/dist/housingvista/pages/transactions/TransactionDetailPage.js +586 -0
  163. package/dist/housingvista/pages/transactions/TransactionDetailPage.js.map +1 -0
  164. package/dist/housingvista/pages/transactions/TransactionsPage.d.ts +7 -0
  165. package/dist/housingvista/pages/transactions/TransactionsPage.d.ts.map +1 -0
  166. package/dist/housingvista/pages/transactions/TransactionsPage.js +224 -0
  167. package/dist/housingvista/pages/transactions/TransactionsPage.js.map +1 -0
  168. package/dist/housingvista/pages/verification/VerificationPage.d.ts +2 -0
  169. package/dist/housingvista/pages/verification/VerificationPage.d.ts.map +1 -0
  170. package/dist/housingvista/pages/verification/VerificationPage.js +136 -0
  171. package/dist/housingvista/pages/verification/VerificationPage.js.map +1 -0
  172. package/dist/housingvista/store/housingvistaStore.d.ts +72 -0
  173. package/dist/housingvista/store/housingvistaStore.d.ts.map +1 -0
  174. package/dist/housingvista/store/housingvistaStore.js +39 -0
  175. package/dist/housingvista/store/housingvistaStore.js.map +1 -0
  176. package/dist/housingvista/types/index.d.ts +1326 -0
  177. package/dist/housingvista/types/index.d.ts.map +1 -0
  178. package/dist/housingvista/utils/helpers.d.ts +12 -0
  179. package/dist/housingvista/utils/helpers.d.ts.map +1 -0
  180. package/dist/housingvista/utils/helpers.js +30 -0
  181. package/dist/housingvista/utils/helpers.js.map +1 -0
  182. package/dist/housingvista/utils/index.d.ts +2 -0
  183. package/dist/housingvista/utils/index.d.ts.map +1 -0
  184. package/dist/index.d.ts +6 -0
  185. package/dist/index.d.ts.map +1 -0
  186. package/dist/index.js +5 -0
  187. package/dist/node_modules/clsx/dist/clsx.js +18 -0
  188. package/dist/node_modules/clsx/dist/clsx.js.map +1 -0
  189. package/dist/node_modules/d3-array/src/ascending.js +8 -0
  190. package/dist/node_modules/d3-array/src/ascending.js.map +1 -0
  191. package/dist/node_modules/d3-array/src/bisect.js +10 -0
  192. package/dist/node_modules/d3-array/src/bisect.js.map +1 -0
  193. package/dist/node_modules/d3-array/src/bisector.js +43 -0
  194. package/dist/node_modules/d3-array/src/bisector.js.map +1 -0
  195. package/dist/node_modules/d3-array/src/descending.js +8 -0
  196. package/dist/node_modules/d3-array/src/descending.js.map +1 -0
  197. package/dist/node_modules/d3-array/src/max.js +14 -0
  198. package/dist/node_modules/d3-array/src/max.js.map +1 -0
  199. package/dist/node_modules/d3-array/src/min.js +14 -0
  200. package/dist/node_modules/d3-array/src/min.js.map +1 -0
  201. package/dist/node_modules/d3-array/src/number.js +15 -0
  202. package/dist/node_modules/d3-array/src/number.js.map +1 -0
  203. package/dist/node_modules/d3-array/src/quantile.js +25 -0
  204. package/dist/node_modules/d3-array/src/quantile.js.map +1 -0
  205. package/dist/node_modules/d3-array/src/quickselect.js +26 -0
  206. package/dist/node_modules/d3-array/src/quickselect.js.map +1 -0
  207. package/dist/node_modules/d3-array/src/range.js +10 -0
  208. package/dist/node_modules/d3-array/src/range.js.map +1 -0
  209. package/dist/node_modules/d3-array/src/sort.js +17 -0
  210. package/dist/node_modules/d3-array/src/sort.js.map +1 -0
  211. package/dist/node_modules/d3-array/src/ticks.js +34 -0
  212. package/dist/node_modules/d3-array/src/ticks.js.map +1 -0
  213. package/dist/node_modules/d3-color/src/color.js +291 -0
  214. package/dist/node_modules/d3-color/src/color.js.map +1 -0
  215. package/dist/node_modules/d3-color/src/define.js +13 -0
  216. package/dist/node_modules/d3-color/src/define.js.map +1 -0
  217. package/dist/node_modules/d3-format/src/defaultLocale.js +15 -0
  218. package/dist/node_modules/d3-format/src/defaultLocale.js.map +1 -0
  219. package/dist/node_modules/d3-format/src/exponent.js +9 -0
  220. package/dist/node_modules/d3-format/src/exponent.js.map +1 -0
  221. package/dist/node_modules/d3-format/src/formatDecimal.js +13 -0
  222. package/dist/node_modules/d3-format/src/formatDecimal.js.map +1 -0
  223. package/dist/node_modules/d3-format/src/formatGroup.js +11 -0
  224. package/dist/node_modules/d3-format/src/formatGroup.js.map +1 -0
  225. package/dist/node_modules/d3-format/src/formatNumerals.js +12 -0
  226. package/dist/node_modules/d3-format/src/formatNumerals.js.map +1 -0
  227. package/dist/node_modules/d3-format/src/formatPrefixAuto.js +13 -0
  228. package/dist/node_modules/d3-format/src/formatPrefixAuto.js.map +1 -0
  229. package/dist/node_modules/d3-format/src/formatRounded.js +12 -0
  230. package/dist/node_modules/d3-format/src/formatRounded.js.map +1 -0
  231. package/dist/node_modules/d3-format/src/formatSpecifier.js +29 -0
  232. package/dist/node_modules/d3-format/src/formatSpecifier.js.map +1 -0
  233. package/dist/node_modules/d3-format/src/formatTrim.js +20 -0
  234. package/dist/node_modules/d3-format/src/formatTrim.js.map +1 -0
  235. package/dist/node_modules/d3-format/src/formatTypes.js +23 -0
  236. package/dist/node_modules/d3-format/src/formatTypes.js.map +1 -0
  237. package/dist/node_modules/d3-format/src/identity.js +8 -0
  238. package/dist/node_modules/d3-format/src/identity.js.map +1 -0
  239. package/dist/node_modules/d3-format/src/locale.js +86 -0
  240. package/dist/node_modules/d3-format/src/locale.js.map +1 -0
  241. package/dist/node_modules/d3-format/src/precisionFixed.js +9 -0
  242. package/dist/node_modules/d3-format/src/precisionFixed.js.map +1 -0
  243. package/dist/node_modules/d3-format/src/precisionPrefix.js +9 -0
  244. package/dist/node_modules/d3-format/src/precisionPrefix.js.map +1 -0
  245. package/dist/node_modules/d3-format/src/precisionRound.js +9 -0
  246. package/dist/node_modules/d3-format/src/precisionRound.js.map +1 -0
  247. package/dist/node_modules/d3-interpolate/src/array.js +15 -0
  248. package/dist/node_modules/d3-interpolate/src/array.js.map +1 -0
  249. package/dist/node_modules/d3-interpolate/src/basis.js +16 -0
  250. package/dist/node_modules/d3-interpolate/src/basis.js.map +1 -0
  251. package/dist/node_modules/d3-interpolate/src/basisClosed.js +13 -0
  252. package/dist/node_modules/d3-interpolate/src/basisClosed.js.map +1 -0
  253. package/dist/node_modules/d3-interpolate/src/color.js +25 -0
  254. package/dist/node_modules/d3-interpolate/src/color.js.map +1 -0
  255. package/dist/node_modules/d3-interpolate/src/constant.js +6 -0
  256. package/dist/node_modules/d3-interpolate/src/constant.js.map +1 -0
  257. package/dist/node_modules/d3-interpolate/src/date.js +11 -0
  258. package/dist/node_modules/d3-interpolate/src/date.js.map +1 -0
  259. package/dist/node_modules/d3-interpolate/src/number.js +10 -0
  260. package/dist/node_modules/d3-interpolate/src/number.js.map +1 -0
  261. package/dist/node_modules/d3-interpolate/src/numberArray.js +16 -0
  262. package/dist/node_modules/d3-interpolate/src/numberArray.js.map +1 -0
  263. package/dist/node_modules/d3-interpolate/src/object.js +14 -0
  264. package/dist/node_modules/d3-interpolate/src/object.js.map +1 -0
  265. package/dist/node_modules/d3-interpolate/src/piecewise.js +14 -0
  266. package/dist/node_modules/d3-interpolate/src/piecewise.js.map +1 -0
  267. package/dist/node_modules/d3-interpolate/src/rgb.js +19 -0
  268. package/dist/node_modules/d3-interpolate/src/rgb.js.map +1 -0
  269. package/dist/node_modules/d3-interpolate/src/round.js +10 -0
  270. package/dist/node_modules/d3-interpolate/src/round.js.map +1 -0
  271. package/dist/node_modules/d3-interpolate/src/string.js +28 -0
  272. package/dist/node_modules/d3-interpolate/src/string.js.map +1 -0
  273. package/dist/node_modules/d3-interpolate/src/value.js +18 -0
  274. package/dist/node_modules/d3-interpolate/src/value.js.map +1 -0
  275. package/dist/node_modules/d3-path/src/path.js +65 -0
  276. package/dist/node_modules/d3-path/src/path.js.map +1 -0
  277. package/dist/node_modules/d3-scale/src/band.js +52 -0
  278. package/dist/node_modules/d3-scale/src/band.js.map +1 -0
  279. package/dist/node_modules/d3-scale/src/constant.js +10 -0
  280. package/dist/node_modules/d3-scale/src/constant.js.map +1 -0
  281. package/dist/node_modules/d3-scale/src/continuous.js +73 -0
  282. package/dist/node_modules/d3-scale/src/continuous.js.map +1 -0
  283. package/dist/node_modules/d3-scale/src/diverging.js +82 -0
  284. package/dist/node_modules/d3-scale/src/diverging.js.map +1 -0
  285. package/dist/node_modules/d3-scale/src/identity.js +20 -0
  286. package/dist/node_modules/d3-scale/src/identity.js.map +1 -0
  287. package/dist/node_modules/d3-scale/src/init.js +29 -0
  288. package/dist/node_modules/d3-scale/src/init.js.map +1 -0
  289. package/dist/node_modules/d3-scale/src/linear.js +36 -0
  290. package/dist/node_modules/d3-scale/src/linear.js.map +1 -0
  291. package/dist/node_modules/d3-scale/src/log.js +77 -0
  292. package/dist/node_modules/d3-scale/src/log.js.map +1 -0
  293. package/dist/node_modules/d3-scale/src/nice.js +10 -0
  294. package/dist/node_modules/d3-scale/src/nice.js.map +1 -0
  295. package/dist/node_modules/d3-scale/src/number.js +8 -0
  296. package/dist/node_modules/d3-scale/src/number.js.map +1 -0
  297. package/dist/node_modules/d3-scale/src/ordinal.js +31 -0
  298. package/dist/node_modules/d3-scale/src/ordinal.js.map +1 -0
  299. package/dist/node_modules/d3-scale/src/pow.js +37 -0
  300. package/dist/node_modules/d3-scale/src/pow.js.map +1 -0
  301. package/dist/node_modules/d3-scale/src/quantile.js +37 -0
  302. package/dist/node_modules/d3-scale/src/quantile.js.map +1 -0
  303. package/dist/node_modules/d3-scale/src/quantize.js +33 -0
  304. package/dist/node_modules/d3-scale/src/quantize.js.map +1 -0
  305. package/dist/node_modules/d3-scale/src/radial.js +39 -0
  306. package/dist/node_modules/d3-scale/src/radial.js.map +1 -0
  307. package/dist/node_modules/d3-scale/src/sequential.js +67 -0
  308. package/dist/node_modules/d3-scale/src/sequential.js.map +1 -0
  309. package/dist/node_modules/d3-scale/src/sequentialQuantile.js +30 -0
  310. package/dist/node_modules/d3-scale/src/sequentialQuantile.js.map +1 -0
  311. package/dist/node_modules/d3-scale/src/symlog.js +30 -0
  312. package/dist/node_modules/d3-scale/src/symlog.js.map +1 -0
  313. package/dist/node_modules/d3-scale/src/threshold.js +25 -0
  314. package/dist/node_modules/d3-scale/src/threshold.js.map +1 -0
  315. package/dist/node_modules/d3-scale/src/tickFormat.js +31 -0
  316. package/dist/node_modules/d3-scale/src/tickFormat.js.map +1 -0
  317. package/dist/node_modules/d3-scale/src/time.js +47 -0
  318. package/dist/node_modules/d3-scale/src/time.js.map +1 -0
  319. package/dist/node_modules/d3-scale/src/utcTime.js +19 -0
  320. package/dist/node_modules/d3-scale/src/utcTime.js.map +1 -0
  321. package/dist/node_modules/d3-shape/src/area.js +55 -0
  322. package/dist/node_modules/d3-shape/src/area.js.map +1 -0
  323. package/dist/node_modules/d3-shape/src/array.js +8 -0
  324. package/dist/node_modules/d3-shape/src/array.js.map +1 -0
  325. package/dist/node_modules/d3-shape/src/constant.js +10 -0
  326. package/dist/node_modules/d3-shape/src/constant.js.map +1 -0
  327. package/dist/node_modules/d3-shape/src/curve/basis.js +49 -0
  328. package/dist/node_modules/d3-shape/src/curve/basis.js.map +1 -0
  329. package/dist/node_modules/d3-shape/src/curve/basisClosed.js +50 -0
  330. package/dist/node_modules/d3-shape/src/curve/basisClosed.js.map +1 -0
  331. package/dist/node_modules/d3-shape/src/curve/basisOpen.js +46 -0
  332. package/dist/node_modules/d3-shape/src/curve/basisOpen.js.map +1 -0
  333. package/dist/node_modules/d3-shape/src/curve/bump.js +40 -0
  334. package/dist/node_modules/d3-shape/src/curve/bump.js.map +1 -0
  335. package/dist/node_modules/d3-shape/src/curve/linear.js +36 -0
  336. package/dist/node_modules/d3-shape/src/curve/linear.js.map +1 -0
  337. package/dist/node_modules/d3-shape/src/curve/linearClosed.js +25 -0
  338. package/dist/node_modules/d3-shape/src/curve/linearClosed.js.map +1 -0
  339. package/dist/node_modules/d3-shape/src/curve/monotone.js +94 -0
  340. package/dist/node_modules/d3-shape/src/curve/monotone.js.map +1 -0
  341. package/dist/node_modules/d3-shape/src/curve/natural.js +39 -0
  342. package/dist/node_modules/d3-shape/src/curve/natural.js.map +1 -0
  343. package/dist/node_modules/d3-shape/src/curve/step.js +47 -0
  344. package/dist/node_modules/d3-shape/src/curve/step.js.map +1 -0
  345. package/dist/node_modules/d3-shape/src/line.js +30 -0
  346. package/dist/node_modules/d3-shape/src/line.js.map +1 -0
  347. package/dist/node_modules/d3-shape/src/math.js +8 -0
  348. package/dist/node_modules/d3-shape/src/math.js.map +1 -0
  349. package/dist/node_modules/d3-shape/src/noop.js +6 -0
  350. package/dist/node_modules/d3-shape/src/noop.js.map +1 -0
  351. package/dist/node_modules/d3-shape/src/offset/expand.js +15 -0
  352. package/dist/node_modules/d3-shape/src/offset/expand.js.map +1 -0
  353. package/dist/node_modules/d3-shape/src/offset/none.js +8 -0
  354. package/dist/node_modules/d3-shape/src/offset/none.js.map +1 -0
  355. package/dist/node_modules/d3-shape/src/offset/silhouette.js +15 -0
  356. package/dist/node_modules/d3-shape/src/offset/silhouette.js.map +1 -0
  357. package/dist/node_modules/d3-shape/src/offset/wiggle.js +21 -0
  358. package/dist/node_modules/d3-shape/src/offset/wiggle.js.map +1 -0
  359. package/dist/node_modules/d3-shape/src/order/none.js +9 -0
  360. package/dist/node_modules/d3-shape/src/order/none.js.map +1 -0
  361. package/dist/node_modules/d3-shape/src/path.js +19 -0
  362. package/dist/node_modules/d3-shape/src/path.js.map +1 -0
  363. package/dist/node_modules/d3-shape/src/point.js +11 -0
  364. package/dist/node_modules/d3-shape/src/point.js.map +1 -0
  365. package/dist/node_modules/d3-shape/src/stack.js +34 -0
  366. package/dist/node_modules/d3-shape/src/stack.js.map +1 -0
  367. package/dist/node_modules/d3-shape/src/symbol/circle.js +10 -0
  368. package/dist/node_modules/d3-shape/src/symbol/circle.js.map +1 -0
  369. package/dist/node_modules/d3-shape/src/symbol/cross.js +10 -0
  370. package/dist/node_modules/d3-shape/src/symbol/cross.js.map +1 -0
  371. package/dist/node_modules/d3-shape/src/symbol/diamond.js +10 -0
  372. package/dist/node_modules/d3-shape/src/symbol/diamond.js.map +1 -0
  373. package/dist/node_modules/d3-shape/src/symbol/square.js +10 -0
  374. package/dist/node_modules/d3-shape/src/symbol/square.js.map +1 -0
  375. package/dist/node_modules/d3-shape/src/symbol/star.js +15 -0
  376. package/dist/node_modules/d3-shape/src/symbol/star.js.map +1 -0
  377. package/dist/node_modules/d3-shape/src/symbol/triangle.js +10 -0
  378. package/dist/node_modules/d3-shape/src/symbol/triangle.js.map +1 -0
  379. package/dist/node_modules/d3-shape/src/symbol/wye.js +10 -0
  380. package/dist/node_modules/d3-shape/src/symbol/wye.js.map +1 -0
  381. package/dist/node_modules/d3-shape/src/symbol.js +23 -0
  382. package/dist/node_modules/d3-shape/src/symbol.js.map +1 -0
  383. package/dist/node_modules/d3-time/src/day.js +21 -0
  384. package/dist/node_modules/d3-time/src/day.js.map +1 -0
  385. package/dist/node_modules/d3-time/src/duration.js +6 -0
  386. package/dist/node_modules/d3-time/src/duration.js.map +1 -0
  387. package/dist/node_modules/d3-time/src/hour.js +19 -0
  388. package/dist/node_modules/d3-time/src/hour.js.map +1 -0
  389. package/dist/node_modules/d3-time/src/interval.js +28 -0
  390. package/dist/node_modules/d3-time/src/interval.js.map +1 -0
  391. package/dist/node_modules/d3-time/src/millisecond.js +14 -0
  392. package/dist/node_modules/d3-time/src/millisecond.js.map +1 -0
  393. package/dist/node_modules/d3-time/src/minute.js +19 -0
  394. package/dist/node_modules/d3-time/src/minute.js.map +1 -0
  395. package/dist/node_modules/d3-time/src/month.js +18 -0
  396. package/dist/node_modules/d3-time/src/month.js.map +1 -0
  397. package/dist/node_modules/d3-time/src/second.js +13 -0
  398. package/dist/node_modules/d3-time/src/second.js.map +1 -0
  399. package/dist/node_modules/d3-time/src/ticks.js +125 -0
  400. package/dist/node_modules/d3-time/src/ticks.js.map +1 -0
  401. package/dist/node_modules/d3-time/src/week.js +25 -0
  402. package/dist/node_modules/d3-time/src/week.js.map +1 -0
  403. package/dist/node_modules/d3-time/src/year.js +26 -0
  404. package/dist/node_modules/d3-time/src/year.js.map +1 -0
  405. package/dist/node_modules/d3-time-format/src/defaultLocale.js +62 -0
  406. package/dist/node_modules/d3-time-format/src/defaultLocale.js.map +1 -0
  407. package/dist/node_modules/d3-time-format/src/locale.js +490 -0
  408. package/dist/node_modules/d3-time-format/src/locale.js.map +1 -0
  409. package/dist/node_modules/decimal.js-light/decimal.js +378 -0
  410. package/dist/node_modules/decimal.js-light/decimal.js.map +1 -0
  411. package/dist/node_modules/eventemitter3/index.js +95 -0
  412. package/dist/node_modules/eventemitter3/index.js.map +1 -0
  413. package/dist/node_modules/fast-equals/dist/es/index.js +267 -0
  414. package/dist/node_modules/fast-equals/dist/es/index.js.map +1 -0
  415. package/dist/node_modules/internmap/src/index.js +40 -0
  416. package/dist/node_modules/internmap/src/index.js.map +1 -0
  417. package/dist/node_modules/lodash/_DataView.js +12 -0
  418. package/dist/node_modules/lodash/_DataView.js.map +1 -0
  419. package/dist/node_modules/lodash/_Hash.js +23 -0
  420. package/dist/node_modules/lodash/_Hash.js.map +1 -0
  421. package/dist/node_modules/lodash/_ListCache.js +23 -0
  422. package/dist/node_modules/lodash/_ListCache.js.map +1 -0
  423. package/dist/node_modules/lodash/_Map.js +12 -0
  424. package/dist/node_modules/lodash/_Map.js.map +1 -0
  425. package/dist/node_modules/lodash/_MapCache.js +23 -0
  426. package/dist/node_modules/lodash/_MapCache.js.map +1 -0
  427. package/dist/node_modules/lodash/_Promise.js +12 -0
  428. package/dist/node_modules/lodash/_Promise.js.map +1 -0
  429. package/dist/node_modules/lodash/_Set.js +12 -0
  430. package/dist/node_modules/lodash/_Set.js.map +1 -0
  431. package/dist/node_modules/lodash/_SetCache.js +18 -0
  432. package/dist/node_modules/lodash/_SetCache.js.map +1 -0
  433. package/dist/node_modules/lodash/_Stack.js +20 -0
  434. package/dist/node_modules/lodash/_Stack.js.map +1 -0
  435. package/dist/node_modules/lodash/_Symbol.js +11 -0
  436. package/dist/node_modules/lodash/_Symbol.js.map +1 -0
  437. package/dist/node_modules/lodash/_Uint8Array.js +11 -0
  438. package/dist/node_modules/lodash/_Uint8Array.js.map +1 -0
  439. package/dist/node_modules/lodash/_WeakMap.js +12 -0
  440. package/dist/node_modules/lodash/_WeakMap.js.map +1 -0
  441. package/dist/node_modules/lodash/_apply.js +19 -0
  442. package/dist/node_modules/lodash/_apply.js.map +1 -0
  443. package/dist/node_modules/lodash/_arrayEvery.js +14 -0
  444. package/dist/node_modules/lodash/_arrayEvery.js.map +1 -0
  445. package/dist/node_modules/lodash/_arrayFilter.js +17 -0
  446. package/dist/node_modules/lodash/_arrayFilter.js.map +1 -0
  447. package/dist/node_modules/lodash/_arrayIncludes.js +15 -0
  448. package/dist/node_modules/lodash/_arrayIncludes.js.map +1 -0
  449. package/dist/node_modules/lodash/_arrayIncludesWith.js +14 -0
  450. package/dist/node_modules/lodash/_arrayIncludesWith.js.map +1 -0
  451. package/dist/node_modules/lodash/_arrayLikeKeys.js +22 -0
  452. package/dist/node_modules/lodash/_arrayLikeKeys.js.map +1 -0
  453. package/dist/node_modules/lodash/_arrayMap.js +14 -0
  454. package/dist/node_modules/lodash/_arrayMap.js.map +1 -0
  455. package/dist/node_modules/lodash/_arrayPush.js +14 -0
  456. package/dist/node_modules/lodash/_arrayPush.js.map +1 -0
  457. package/dist/node_modules/lodash/_arraySome.js +14 -0
  458. package/dist/node_modules/lodash/_arraySome.js.map +1 -0
  459. package/dist/node_modules/lodash/_asciiToArray.js +13 -0
  460. package/dist/node_modules/lodash/_asciiToArray.js.map +1 -0
  461. package/dist/node_modules/lodash/_assocIndexOf.js +16 -0
  462. package/dist/node_modules/lodash/_assocIndexOf.js.map +1 -0
  463. package/dist/node_modules/lodash/_baseAssignValue.js +20 -0
  464. package/dist/node_modules/lodash/_baseAssignValue.js.map +1 -0
  465. package/dist/node_modules/lodash/_baseEach.js +13 -0
  466. package/dist/node_modules/lodash/_baseEach.js.map +1 -0
  467. package/dist/node_modules/lodash/_baseEvery.js +18 -0
  468. package/dist/node_modules/lodash/_baseEvery.js.map +1 -0
  469. package/dist/node_modules/lodash/_baseExtremum.js +19 -0
  470. package/dist/node_modules/lodash/_baseExtremum.js.map +1 -0
  471. package/dist/node_modules/lodash/_baseFindIndex.js +14 -0
  472. package/dist/node_modules/lodash/_baseFindIndex.js.map +1 -0
  473. package/dist/node_modules/lodash/_baseFlatten.js +21 -0
  474. package/dist/node_modules/lodash/_baseFlatten.js.map +1 -0
  475. package/dist/node_modules/lodash/_baseFor.js +11 -0
  476. package/dist/node_modules/lodash/_baseFor.js.map +1 -0
  477. package/dist/node_modules/lodash/_baseForOwn.js +16 -0
  478. package/dist/node_modules/lodash/_baseForOwn.js.map +1 -0
  479. package/dist/node_modules/lodash/_baseGet.js +18 -0
  480. package/dist/node_modules/lodash/_baseGet.js.map +1 -0
  481. package/dist/node_modules/lodash/_baseGetAllKeys.js +17 -0
  482. package/dist/node_modules/lodash/_baseGetAllKeys.js.map +1 -0
  483. package/dist/node_modules/lodash/_baseGetTag.js +17 -0
  484. package/dist/node_modules/lodash/_baseGetTag.js.map +1 -0
  485. package/dist/node_modules/lodash/_baseGt.js +13 -0
  486. package/dist/node_modules/lodash/_baseGt.js.map +1 -0
  487. package/dist/node_modules/lodash/_baseHasIn.js +13 -0
  488. package/dist/node_modules/lodash/_baseHasIn.js.map +1 -0
  489. package/dist/node_modules/lodash/_baseIndexOf.js +17 -0
  490. package/dist/node_modules/lodash/_baseIndexOf.js.map +1 -0
  491. package/dist/node_modules/lodash/_baseIsArguments.js +16 -0
  492. package/dist/node_modules/lodash/_baseIsArguments.js.map +1 -0
  493. package/dist/node_modules/lodash/_baseIsEqual.js +16 -0
  494. package/dist/node_modules/lodash/_baseIsEqual.js.map +1 -0
  495. package/dist/node_modules/lodash/_baseIsEqualDeep.js +37 -0
  496. package/dist/node_modules/lodash/_baseIsEqualDeep.js.map +1 -0
  497. package/dist/node_modules/lodash/_baseIsMatch.js +33 -0
  498. package/dist/node_modules/lodash/_baseIsMatch.js.map +1 -0
  499. package/dist/node_modules/lodash/_baseIsNaN.js +13 -0
  500. package/dist/node_modules/lodash/_baseIsNaN.js.map +1 -0
  501. package/dist/node_modules/lodash/_baseIsNative.js +18 -0
  502. package/dist/node_modules/lodash/_baseIsNative.js.map +1 -0
  503. package/dist/node_modules/lodash/_baseIsTypedArray.js +18 -0
  504. package/dist/node_modules/lodash/_baseIsTypedArray.js.map +1 -0
  505. package/dist/node_modules/lodash/_baseIteratee.js +19 -0
  506. package/dist/node_modules/lodash/_baseIteratee.js.map +1 -0
  507. package/dist/node_modules/lodash/_baseKeys.js +19 -0
  508. package/dist/node_modules/lodash/_baseKeys.js.map +1 -0
  509. package/dist/node_modules/lodash/_baseLt.js +13 -0
  510. package/dist/node_modules/lodash/_baseLt.js.map +1 -0
  511. package/dist/node_modules/lodash/_baseMap.js +19 -0
  512. package/dist/node_modules/lodash/_baseMap.js.map +1 -0
  513. package/dist/node_modules/lodash/_baseMatches.js +20 -0
  514. package/dist/node_modules/lodash/_baseMatches.js.map +1 -0
  515. package/dist/node_modules/lodash/_baseMatchesProperty.js +24 -0
  516. package/dist/node_modules/lodash/_baseMatchesProperty.js.map +1 -0
  517. package/dist/node_modules/lodash/_baseOrderBy.js +39 -0
  518. package/dist/node_modules/lodash/_baseOrderBy.js.map +1 -0
  519. package/dist/node_modules/lodash/_baseProperty.js +15 -0
  520. package/dist/node_modules/lodash/_baseProperty.js.map +1 -0
  521. package/dist/node_modules/lodash/_basePropertyDeep.js +17 -0
  522. package/dist/node_modules/lodash/_basePropertyDeep.js.map +1 -0
  523. package/dist/node_modules/lodash/_baseRange.js +15 -0
  524. package/dist/node_modules/lodash/_baseRange.js.map +1 -0
  525. package/dist/node_modules/lodash/_baseRest.js +17 -0
  526. package/dist/node_modules/lodash/_baseRest.js.map +1 -0
  527. package/dist/node_modules/lodash/_baseSetToString.js +21 -0
  528. package/dist/node_modules/lodash/_baseSetToString.js.map +1 -0
  529. package/dist/node_modules/lodash/_baseSlice.js +16 -0
  530. package/dist/node_modules/lodash/_baseSlice.js.map +1 -0
  531. package/dist/node_modules/lodash/_baseSome.js +18 -0
  532. package/dist/node_modules/lodash/_baseSome.js.map +1 -0
  533. package/dist/node_modules/lodash/_baseSortBy.js +15 -0
  534. package/dist/node_modules/lodash/_baseSortBy.js.map +1 -0
  535. package/dist/node_modules/lodash/_baseTimes.js +14 -0
  536. package/dist/node_modules/lodash/_baseTimes.js.map +1 -0
  537. package/dist/node_modules/lodash/_baseToString.js +22 -0
  538. package/dist/node_modules/lodash/_baseToString.js.map +1 -0
  539. package/dist/node_modules/lodash/_baseTrim.js +15 -0
  540. package/dist/node_modules/lodash/_baseTrim.js.map +1 -0
  541. package/dist/node_modules/lodash/_baseUnary.js +15 -0
  542. package/dist/node_modules/lodash/_baseUnary.js.map +1 -0
  543. package/dist/node_modules/lodash/_baseUniq.js +34 -0
  544. package/dist/node_modules/lodash/_baseUniq.js.map +1 -0
  545. package/dist/node_modules/lodash/_cacheHas.js +13 -0
  546. package/dist/node_modules/lodash/_cacheHas.js.map +1 -0
  547. package/dist/node_modules/lodash/_castPath.js +18 -0
  548. package/dist/node_modules/lodash/_castPath.js.map +1 -0
  549. package/dist/node_modules/lodash/_castSlice.js +16 -0
  550. package/dist/node_modules/lodash/_castSlice.js.map +1 -0
  551. package/dist/node_modules/lodash/_compareAscending.js +20 -0
  552. package/dist/node_modules/lodash/_compareAscending.js.map +1 -0
  553. package/dist/node_modules/lodash/_compareMultiple.js +19 -0
  554. package/dist/node_modules/lodash/_compareMultiple.js.map +1 -0
  555. package/dist/node_modules/lodash/_coreJsData.js +11 -0
  556. package/dist/node_modules/lodash/_coreJsData.js.map +1 -0
  557. package/dist/node_modules/lodash/_createBaseEach.js +20 -0
  558. package/dist/node_modules/lodash/_createBaseEach.js.map +1 -0
  559. package/dist/node_modules/lodash/_createBaseFor.js +19 -0
  560. package/dist/node_modules/lodash/_createBaseFor.js.map +1 -0
  561. package/dist/node_modules/lodash/_createCaseFirst.js +22 -0
  562. package/dist/node_modules/lodash/_createCaseFirst.js.map +1 -0
  563. package/dist/node_modules/lodash/_createFind.js +27 -0
  564. package/dist/node_modules/lodash/_createFind.js.map +1 -0
  565. package/dist/node_modules/lodash/_createRange.js +19 -0
  566. package/dist/node_modules/lodash/_createRange.js.map +1 -0
  567. package/dist/node_modules/lodash/_createSet.js +16 -0
  568. package/dist/node_modules/lodash/_createSet.js.map +1 -0
  569. package/dist/node_modules/lodash/_defineProperty.js +17 -0
  570. package/dist/node_modules/lodash/_defineProperty.js.map +1 -0
  571. package/dist/node_modules/lodash/_equalArrays.js +42 -0
  572. package/dist/node_modules/lodash/_equalArrays.js.map +1 -0
  573. package/dist/node_modules/lodash/_equalByTag.js +42 -0
  574. package/dist/node_modules/lodash/_equalByTag.js.map +1 -0
  575. package/dist/node_modules/lodash/_equalObjects.js +39 -0
  576. package/dist/node_modules/lodash/_equalObjects.js.map +1 -0
  577. package/dist/node_modules/lodash/_freeGlobal.js +10 -0
  578. package/dist/node_modules/lodash/_freeGlobal.js.map +1 -0
  579. package/dist/node_modules/lodash/_getAllKeys.js +17 -0
  580. package/dist/node_modules/lodash/_getAllKeys.js.map +1 -0
  581. package/dist/node_modules/lodash/_getMapData.js +16 -0
  582. package/dist/node_modules/lodash/_getMapData.js.map +1 -0
  583. package/dist/node_modules/lodash/_getMatchData.js +24 -0
  584. package/dist/node_modules/lodash/_getMatchData.js.map +1 -0
  585. package/dist/node_modules/lodash/_getNative.js +17 -0
  586. package/dist/node_modules/lodash/_getNative.js.map +1 -0
  587. package/dist/node_modules/lodash/_getPrototype.js +11 -0
  588. package/dist/node_modules/lodash/_getPrototype.js.map +1 -0
  589. package/dist/node_modules/lodash/_getRawTag.js +21 -0
  590. package/dist/node_modules/lodash/_getRawTag.js.map +1 -0
  591. package/dist/node_modules/lodash/_getSymbols.js +17 -0
  592. package/dist/node_modules/lodash/_getSymbols.js.map +1 -0
  593. package/dist/node_modules/lodash/_getTag.js +28 -0
  594. package/dist/node_modules/lodash/_getTag.js.map +1 -0
  595. package/dist/node_modules/lodash/_getValue.js +13 -0
  596. package/dist/node_modules/lodash/_getValue.js.map +1 -0
  597. package/dist/node_modules/lodash/_hasPath.js +26 -0
  598. package/dist/node_modules/lodash/_hasPath.js.map +1 -0
  599. package/dist/node_modules/lodash/_hasUnicode.js +14 -0
  600. package/dist/node_modules/lodash/_hasUnicode.js.map +1 -0
  601. package/dist/node_modules/lodash/_hashClear.js +15 -0
  602. package/dist/node_modules/lodash/_hashClear.js.map +1 -0
  603. package/dist/node_modules/lodash/_hashDelete.js +14 -0
  604. package/dist/node_modules/lodash/_hashDelete.js.map +1 -0
  605. package/dist/node_modules/lodash/_hashGet.js +20 -0
  606. package/dist/node_modules/lodash/_hashGet.js.map +1 -0
  607. package/dist/node_modules/lodash/_hashHas.js +16 -0
  608. package/dist/node_modules/lodash/_hashHas.js.map +1 -0
  609. package/dist/node_modules/lodash/_hashSet.js +16 -0
  610. package/dist/node_modules/lodash/_hashSet.js.map +1 -0
  611. package/dist/node_modules/lodash/_isFlattenable.js +17 -0
  612. package/dist/node_modules/lodash/_isFlattenable.js.map +1 -0
  613. package/dist/node_modules/lodash/_isIndex.js +15 -0
  614. package/dist/node_modules/lodash/_isIndex.js.map +1 -0
  615. package/dist/node_modules/lodash/_isIterateeCall.js +20 -0
  616. package/dist/node_modules/lodash/_isIterateeCall.js.map +1 -0
  617. package/dist/node_modules/lodash/_isKey.js +18 -0
  618. package/dist/node_modules/lodash/_isKey.js.map +1 -0
  619. package/dist/node_modules/lodash/_isKeyable.js +14 -0
  620. package/dist/node_modules/lodash/_isKeyable.js.map +1 -0
  621. package/dist/node_modules/lodash/_isMasked.js +18 -0
  622. package/dist/node_modules/lodash/_isMasked.js.map +1 -0
  623. package/dist/node_modules/lodash/_isPrototype.js +15 -0
  624. package/dist/node_modules/lodash/_isPrototype.js.map +1 -0
  625. package/dist/node_modules/lodash/_isStrictComparable.js +15 -0
  626. package/dist/node_modules/lodash/_isStrictComparable.js.map +1 -0
  627. package/dist/node_modules/lodash/_listCacheClear.js +13 -0
  628. package/dist/node_modules/lodash/_listCacheClear.js.map +1 -0
  629. package/dist/node_modules/lodash/_listCacheDelete.js +16 -0
  630. package/dist/node_modules/lodash/_listCacheDelete.js.map +1 -0
  631. package/dist/node_modules/lodash/_listCacheGet.js +16 -0
  632. package/dist/node_modules/lodash/_listCacheGet.js.map +1 -0
  633. package/dist/node_modules/lodash/_listCacheHas.js +15 -0
  634. package/dist/node_modules/lodash/_listCacheHas.js.map +1 -0
  635. package/dist/node_modules/lodash/_listCacheSet.js +16 -0
  636. package/dist/node_modules/lodash/_listCacheSet.js.map +1 -0
  637. package/dist/node_modules/lodash/_mapCacheClear.js +21 -0
  638. package/dist/node_modules/lodash/_mapCacheClear.js.map +1 -0
  639. package/dist/node_modules/lodash/_mapCacheDelete.js +16 -0
  640. package/dist/node_modules/lodash/_mapCacheDelete.js.map +1 -0
  641. package/dist/node_modules/lodash/_mapCacheGet.js +15 -0
  642. package/dist/node_modules/lodash/_mapCacheGet.js.map +1 -0
  643. package/dist/node_modules/lodash/_mapCacheHas.js +15 -0
  644. package/dist/node_modules/lodash/_mapCacheHas.js.map +1 -0
  645. package/dist/node_modules/lodash/_mapCacheSet.js +16 -0
  646. package/dist/node_modules/lodash/_mapCacheSet.js.map +1 -0
  647. package/dist/node_modules/lodash/_mapToArray.js +16 -0
  648. package/dist/node_modules/lodash/_mapToArray.js.map +1 -0
  649. package/dist/node_modules/lodash/_matchesStrictComparable.js +15 -0
  650. package/dist/node_modules/lodash/_matchesStrictComparable.js.map +1 -0
  651. package/dist/node_modules/lodash/_memoizeCapped.js +18 -0
  652. package/dist/node_modules/lodash/_memoizeCapped.js.map +1 -0
  653. package/dist/node_modules/lodash/_nativeCreate.js +11 -0
  654. package/dist/node_modules/lodash/_nativeCreate.js.map +1 -0
  655. package/dist/node_modules/lodash/_nativeKeys.js +11 -0
  656. package/dist/node_modules/lodash/_nativeKeys.js.map +1 -0
  657. package/dist/node_modules/lodash/_nodeUtil.js +16 -0
  658. package/dist/node_modules/lodash/_nodeUtil.js.map +1 -0
  659. package/dist/node_modules/lodash/_objectToString.js +14 -0
  660. package/dist/node_modules/lodash/_objectToString.js.map +1 -0
  661. package/dist/node_modules/lodash/_overArg.js +15 -0
  662. package/dist/node_modules/lodash/_overArg.js.map +1 -0
  663. package/dist/node_modules/lodash/_overRest.js +20 -0
  664. package/dist/node_modules/lodash/_overRest.js.map +1 -0
  665. package/dist/node_modules/lodash/_root.js +12 -0
  666. package/dist/node_modules/lodash/_root.js.map +1 -0
  667. package/dist/node_modules/lodash/_setCacheAdd.js +14 -0
  668. package/dist/node_modules/lodash/_setCacheAdd.js.map +1 -0
  669. package/dist/node_modules/lodash/_setCacheHas.js +13 -0
  670. package/dist/node_modules/lodash/_setCacheHas.js.map +1 -0
  671. package/dist/node_modules/lodash/_setToArray.js +16 -0
  672. package/dist/node_modules/lodash/_setToArray.js.map +1 -0
  673. package/dist/node_modules/lodash/_setToString.js +13 -0
  674. package/dist/node_modules/lodash/_setToString.js.map +1 -0
  675. package/dist/node_modules/lodash/_shortOut.js +21 -0
  676. package/dist/node_modules/lodash/_shortOut.js.map +1 -0
  677. package/dist/node_modules/lodash/_stackClear.js +15 -0
  678. package/dist/node_modules/lodash/_stackClear.js.map +1 -0
  679. package/dist/node_modules/lodash/_stackDelete.js +14 -0
  680. package/dist/node_modules/lodash/_stackDelete.js.map +1 -0
  681. package/dist/node_modules/lodash/_stackGet.js +13 -0
  682. package/dist/node_modules/lodash/_stackGet.js.map +1 -0
  683. package/dist/node_modules/lodash/_stackHas.js +13 -0
  684. package/dist/node_modules/lodash/_stackHas.js.map +1 -0
  685. package/dist/node_modules/lodash/_stackSet.js +23 -0
  686. package/dist/node_modules/lodash/_stackSet.js.map +1 -0
  687. package/dist/node_modules/lodash/_strictIndexOf.js +14 -0
  688. package/dist/node_modules/lodash/_strictIndexOf.js.map +1 -0
  689. package/dist/node_modules/lodash/_stringToArray.js +17 -0
  690. package/dist/node_modules/lodash/_stringToArray.js.map +1 -0
  691. package/dist/node_modules/lodash/_stringToPath.js +17 -0
  692. package/dist/node_modules/lodash/_stringToPath.js.map +1 -0
  693. package/dist/node_modules/lodash/_toKey.js +17 -0
  694. package/dist/node_modules/lodash/_toKey.js.map +1 -0
  695. package/dist/node_modules/lodash/_toSource.js +22 -0
  696. package/dist/node_modules/lodash/_toSource.js.map +1 -0
  697. package/dist/node_modules/lodash/_trimmedEndIndex.js +15 -0
  698. package/dist/node_modules/lodash/_trimmedEndIndex.js.map +1 -0
  699. package/dist/node_modules/lodash/_unicodeToArray.js +24 -0
  700. package/dist/node_modules/lodash/_unicodeToArray.js.map +1 -0
  701. package/dist/node_modules/lodash/constant.js +15 -0
  702. package/dist/node_modules/lodash/constant.js.map +1 -0
  703. package/dist/node_modules/lodash/debounce.js +57 -0
  704. package/dist/node_modules/lodash/debounce.js.map +1 -0
  705. package/dist/node_modules/lodash/eq.js +13 -0
  706. package/dist/node_modules/lodash/eq.js.map +1 -0
  707. package/dist/node_modules/lodash/every.js +20 -0
  708. package/dist/node_modules/lodash/every.js.map +1 -0
  709. package/dist/node_modules/lodash/find.js +12 -0
  710. package/dist/node_modules/lodash/find.js.map +1 -0
  711. package/dist/node_modules/lodash/findIndex.js +20 -0
  712. package/dist/node_modules/lodash/findIndex.js.map +1 -0
  713. package/dist/node_modules/lodash/flatMap.js +16 -0
  714. package/dist/node_modules/lodash/flatMap.js.map +1 -0
  715. package/dist/node_modules/lodash/get.js +16 -0
  716. package/dist/node_modules/lodash/get.js.map +1 -0
  717. package/dist/node_modules/lodash/hasIn.js +16 -0
  718. package/dist/node_modules/lodash/hasIn.js.map +1 -0
  719. package/dist/node_modules/lodash/identity.js +13 -0
  720. package/dist/node_modules/lodash/identity.js.map +1 -0
  721. package/dist/node_modules/lodash/isArguments.js +17 -0
  722. package/dist/node_modules/lodash/isArguments.js.map +1 -0
  723. package/dist/node_modules/lodash/isArray.js +10 -0
  724. package/dist/node_modules/lodash/isArray.js.map +1 -0
  725. package/dist/node_modules/lodash/isArrayLike.js +16 -0
  726. package/dist/node_modules/lodash/isArrayLike.js.map +1 -0
  727. package/dist/node_modules/lodash/isBoolean.js +16 -0
  728. package/dist/node_modules/lodash/isBoolean.js.map +1 -0
  729. package/dist/node_modules/lodash/isBuffer.js +13 -0
  730. package/dist/node_modules/lodash/isBuffer.js.map +1 -0
  731. package/dist/node_modules/lodash/isEqual.js +15 -0
  732. package/dist/node_modules/lodash/isEqual.js.map +1 -0
  733. package/dist/node_modules/lodash/isFunction.js +18 -0
  734. package/dist/node_modules/lodash/isFunction.js.map +1 -0
  735. package/dist/node_modules/lodash/isLength.js +14 -0
  736. package/dist/node_modules/lodash/isLength.js.map +1 -0
  737. package/dist/node_modules/lodash/isNaN.js +15 -0
  738. package/dist/node_modules/lodash/isNaN.js.map +1 -0
  739. package/dist/node_modules/lodash/isNil.js +13 -0
  740. package/dist/node_modules/lodash/isNil.js.map +1 -0
  741. package/dist/node_modules/lodash/isNumber.js +16 -0
  742. package/dist/node_modules/lodash/isNumber.js.map +1 -0
  743. package/dist/node_modules/lodash/isObject.js +14 -0
  744. package/dist/node_modules/lodash/isObject.js.map +1 -0
  745. package/dist/node_modules/lodash/isObjectLike.js +13 -0
  746. package/dist/node_modules/lodash/isObjectLike.js.map +1 -0
  747. package/dist/node_modules/lodash/isPlainObject.js +21 -0
  748. package/dist/node_modules/lodash/isPlainObject.js.map +1 -0
  749. package/dist/node_modules/lodash/isString.js +17 -0
  750. package/dist/node_modules/lodash/isString.js.map +1 -0
  751. package/dist/node_modules/lodash/isSymbol.js +16 -0
  752. package/dist/node_modules/lodash/isSymbol.js.map +1 -0
  753. package/dist/node_modules/lodash/isTypedArray.js +14 -0
  754. package/dist/node_modules/lodash/isTypedArray.js.map +1 -0
  755. package/dist/node_modules/lodash/keys.js +17 -0
  756. package/dist/node_modules/lodash/keys.js.map +1 -0
  757. package/dist/node_modules/lodash/last.js +14 -0
  758. package/dist/node_modules/lodash/last.js.map +1 -0
  759. package/dist/node_modules/lodash/map.js +18 -0
  760. package/dist/node_modules/lodash/map.js.map +1 -0
  761. package/dist/node_modules/lodash/mapValues.js +20 -0
  762. package/dist/node_modules/lodash/mapValues.js.map +1 -0
  763. package/dist/node_modules/lodash/max.js +17 -0
  764. package/dist/node_modules/lodash/max.js.map +1 -0
  765. package/dist/node_modules/lodash/memoize.js +22 -0
  766. package/dist/node_modules/lodash/memoize.js.map +1 -0
  767. package/dist/node_modules/lodash/min.js +17 -0
  768. package/dist/node_modules/lodash/min.js.map +1 -0
  769. package/dist/node_modules/lodash/noop.js +11 -0
  770. package/dist/node_modules/lodash/noop.js.map +1 -0
  771. package/dist/node_modules/lodash/now.js +14 -0
  772. package/dist/node_modules/lodash/now.js.map +1 -0
  773. package/dist/node_modules/lodash/property.js +18 -0
  774. package/dist/node_modules/lodash/property.js.map +1 -0
  775. package/dist/node_modules/lodash/range.js +11 -0
  776. package/dist/node_modules/lodash/range.js.map +1 -0
  777. package/dist/node_modules/lodash/some.js +20 -0
  778. package/dist/node_modules/lodash/some.js.map +1 -0
  779. package/dist/node_modules/lodash/sortBy.js +19 -0
  780. package/dist/node_modules/lodash/sortBy.js.map +1 -0
  781. package/dist/node_modules/lodash/stubArray.js +13 -0
  782. package/dist/node_modules/lodash/stubArray.js.map +1 -0
  783. package/dist/node_modules/lodash/stubFalse.js +13 -0
  784. package/dist/node_modules/lodash/stubFalse.js.map +1 -0
  785. package/dist/node_modules/lodash/throttle.js +22 -0
  786. package/dist/node_modules/lodash/throttle.js.map +1 -0
  787. package/dist/node_modules/lodash/toFinite.js +15 -0
  788. package/dist/node_modules/lodash/toFinite.js.map +1 -0
  789. package/dist/node_modules/lodash/toInteger.js +16 -0
  790. package/dist/node_modules/lodash/toInteger.js.map +1 -0
  791. package/dist/node_modules/lodash/toNumber.js +26 -0
  792. package/dist/node_modules/lodash/toNumber.js.map +1 -0
  793. package/dist/node_modules/lodash/toString.js +15 -0
  794. package/dist/node_modules/lodash/toString.js.map +1 -0
  795. package/dist/node_modules/lodash/uniqBy.js +16 -0
  796. package/dist/node_modules/lodash/uniqBy.js.map +1 -0
  797. package/dist/node_modules/lodash/upperFirst.js +11 -0
  798. package/dist/node_modules/lodash/upperFirst.js.map +1 -0
  799. package/dist/node_modules/object-assign/index.js +41 -0
  800. package/dist/node_modules/object-assign/index.js.map +1 -0
  801. package/dist/node_modules/prop-types/checkPropTypes.js +46 -0
  802. package/dist/node_modules/prop-types/checkPropTypes.js.map +1 -0
  803. package/dist/node_modules/prop-types/factoryWithThrowingShims.js +49 -0
  804. package/dist/node_modules/prop-types/factoryWithThrowingShims.js.map +1 -0
  805. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js +272 -0
  806. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -0
  807. package/dist/node_modules/prop-types/index.js +16 -0
  808. package/dist/node_modules/prop-types/index.js.map +1 -0
  809. package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js +10 -0
  810. package/dist/node_modules/prop-types/lib/ReactPropTypesSecret.js.map +1 -0
  811. package/dist/node_modules/prop-types/lib/has.js +10 -0
  812. package/dist/node_modules/prop-types/lib/has.js.map +1 -0
  813. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +84 -0
  814. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  815. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +64 -0
  816. package/dist/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  817. package/dist/node_modules/prop-types/node_modules/react-is/index.js +12 -0
  818. package/dist/node_modules/prop-types/node_modules/react-is/index.js.map +1 -0
  819. package/dist/node_modules/react-is/cjs/react-is.development.js +87 -0
  820. package/dist/node_modules/react-is/cjs/react-is.development.js.map +1 -0
  821. package/dist/node_modules/react-is/cjs/react-is.production.min.js +65 -0
  822. package/dist/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
  823. package/dist/node_modules/react-is/index.js +12 -0
  824. package/dist/node_modules/react-is/index.js.map +1 -0
  825. package/dist/node_modules/react-smooth/es6/Animate.js +374 -0
  826. package/dist/node_modules/react-smooth/es6/Animate.js.map +1 -0
  827. package/dist/node_modules/react-smooth/es6/AnimateManager.js +73 -0
  828. package/dist/node_modules/react-smooth/es6/AnimateManager.js.map +1 -0
  829. package/dist/node_modules/react-smooth/es6/configUpdate.js +173 -0
  830. package/dist/node_modules/react-smooth/es6/configUpdate.js.map +1 -0
  831. package/dist/node_modules/react-smooth/es6/easing.js +152 -0
  832. package/dist/node_modules/react-smooth/es6/easing.js.map +1 -0
  833. package/dist/node_modules/react-smooth/es6/index.js +9 -0
  834. package/dist/node_modules/react-smooth/es6/index.js.map +1 -0
  835. package/dist/node_modules/react-smooth/es6/setRafTimeout.js +14 -0
  836. package/dist/node_modules/react-smooth/es6/setRafTimeout.js.map +1 -0
  837. package/dist/node_modules/react-smooth/es6/util.js +92 -0
  838. package/dist/node_modules/react-smooth/es6/util.js.map +1 -0
  839. package/dist/node_modules/recharts/es6/cartesian/Area.js +435 -0
  840. package/dist/node_modules/recharts/es6/cartesian/Area.js.map +1 -0
  841. package/dist/node_modules/recharts/es6/cartesian/Bar.js +387 -0
  842. package/dist/node_modules/recharts/es6/cartesian/Bar.js.map +1 -0
  843. package/dist/node_modules/recharts/es6/cartesian/Brush.js +499 -0
  844. package/dist/node_modules/recharts/es6/cartesian/Brush.js.map +1 -0
  845. package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js +338 -0
  846. package/dist/node_modules/recharts/es6/cartesian/CartesianAxis.js.map +1 -0
  847. package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js +305 -0
  848. package/dist/node_modules/recharts/es6/cartesian/CartesianGrid.js.map +1 -0
  849. package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js +243 -0
  850. package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js.map +1 -0
  851. package/dist/node_modules/recharts/es6/cartesian/Line.js +473 -0
  852. package/dist/node_modules/recharts/es6/cartesian/Line.js.map +1 -0
  853. package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js +173 -0
  854. package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js.map +1 -0
  855. package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js +178 -0
  856. package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js.map +1 -0
  857. package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js +254 -0
  858. package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js.map +1 -0
  859. package/dist/node_modules/recharts/es6/cartesian/XAxis.js +144 -0
  860. package/dist/node_modules/recharts/es6/cartesian/XAxis.js.map +1 -0
  861. package/dist/node_modules/recharts/es6/cartesian/YAxis.js +143 -0
  862. package/dist/node_modules/recharts/es6/cartesian/YAxis.js.map +1 -0
  863. package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js +18 -0
  864. package/dist/node_modules/recharts/es6/cartesian/getEquidistantTicks.js.map +1 -0
  865. package/dist/node_modules/recharts/es6/cartesian/getTicks.js +121 -0
  866. package/dist/node_modules/recharts/es6/cartesian/getTicks.js.map +1 -0
  867. package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js +101 -0
  868. package/dist/node_modules/recharts/es6/chart/AccessibilityManager.js.map +1 -0
  869. package/dist/node_modules/recharts/es6/chart/AreaChart.js +22 -0
  870. package/dist/node_modules/recharts/es6/chart/AreaChart.js.map +1 -0
  871. package/dist/node_modules/recharts/es6/chart/LineChart.js +22 -0
  872. package/dist/node_modules/recharts/es6/chart/LineChart.js.map +1 -0
  873. package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js +1245 -0
  874. package/dist/node_modules/recharts/es6/chart/generateCategoricalChart.js.map +1 -0
  875. package/dist/node_modules/recharts/es6/component/Cell.js +9 -0
  876. package/dist/node_modules/recharts/es6/component/Cell.js.map +1 -0
  877. package/dist/node_modules/recharts/es6/component/Cursor.js +93 -0
  878. package/dist/node_modules/recharts/es6/component/Cursor.js.map +1 -0
  879. package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js +237 -0
  880. package/dist/node_modules/recharts/es6/component/DefaultLegendContent.js.map +1 -0
  881. package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js +171 -0
  882. package/dist/node_modules/recharts/es6/component/DefaultTooltipContent.js.map +1 -0
  883. package/dist/node_modules/recharts/es6/component/Label.js +353 -0
  884. package/dist/node_modules/recharts/es6/component/Label.js.map +1 -0
  885. package/dist/node_modules/recharts/es6/component/LabelList.js +166 -0
  886. package/dist/node_modules/recharts/es6/component/LabelList.js.map +1 -0
  887. package/dist/node_modules/recharts/es6/component/Legend.js +234 -0
  888. package/dist/node_modules/recharts/es6/component/Legend.js.map +1 -0
  889. package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js +187 -0
  890. package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js.map +1 -0
  891. package/dist/node_modules/recharts/es6/component/Text.js +225 -0
  892. package/dist/node_modules/recharts/es6/component/Text.js.map +1 -0
  893. package/dist/node_modules/recharts/es6/component/Tooltip.js +182 -0
  894. package/dist/node_modules/recharts/es6/component/Tooltip.js.map +1 -0
  895. package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js +198 -0
  896. package/dist/node_modules/recharts/es6/component/TooltipBoundingBox.js.map +1 -0
  897. package/dist/node_modules/recharts/es6/container/Layer.js +40 -0
  898. package/dist/node_modules/recharts/es6/container/Layer.js.map +1 -0
  899. package/dist/node_modules/recharts/es6/container/Surface.js +60 -0
  900. package/dist/node_modules/recharts/es6/container/Surface.js.map +1 -0
  901. package/dist/node_modules/recharts/es6/context/chartLayoutContext.js +57 -0
  902. package/dist/node_modules/recharts/es6/context/chartLayoutContext.js.map +1 -0
  903. package/dist/node_modules/recharts/es6/shape/Cross.js +112 -0
  904. package/dist/node_modules/recharts/es6/shape/Cross.js.map +1 -0
  905. package/dist/node_modules/recharts/es6/shape/Curve.js +136 -0
  906. package/dist/node_modules/recharts/es6/shape/Curve.js.map +1 -0
  907. package/dist/node_modules/recharts/es6/shape/Dot.js +27 -0
  908. package/dist/node_modules/recharts/es6/shape/Dot.js.map +1 -0
  909. package/dist/node_modules/recharts/es6/shape/Rectangle.js +205 -0
  910. package/dist/node_modules/recharts/es6/shape/Rectangle.js.map +1 -0
  911. package/dist/node_modules/recharts/es6/shape/Sector.js +192 -0
  912. package/dist/node_modules/recharts/es6/shape/Sector.js.map +1 -0
  913. package/dist/node_modules/recharts/es6/shape/Symbols.js +143 -0
  914. package/dist/node_modules/recharts/es6/shape/Symbols.js.map +1 -0
  915. package/dist/node_modules/recharts/es6/shape/Trapezoid.js +175 -0
  916. package/dist/node_modules/recharts/es6/shape/Trapezoid.js.map +1 -0
  917. package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js +181 -0
  918. package/dist/node_modules/recharts/es6/util/ActiveShapeUtils.js.map +1 -0
  919. package/dist/node_modules/recharts/es6/util/BarUtils.js +112 -0
  920. package/dist/node_modules/recharts/es6/util/BarUtils.js.map +1 -0
  921. package/dist/node_modules/recharts/es6/util/CartesianUtils.js +234 -0
  922. package/dist/node_modules/recharts/es6/util/CartesianUtils.js.map +1 -0
  923. package/dist/node_modules/recharts/es6/util/ChartUtils.js +562 -0
  924. package/dist/node_modules/recharts/es6/util/ChartUtils.js.map +1 -0
  925. package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js +70 -0
  926. package/dist/node_modules/recharts/es6/util/CssPrefixUtils.js.map +1 -0
  927. package/dist/node_modules/recharts/es6/util/DOMUtils.js +108 -0
  928. package/dist/node_modules/recharts/es6/util/DOMUtils.js.map +1 -0
  929. package/dist/node_modules/recharts/es6/util/DataUtils.js +57 -0
  930. package/dist/node_modules/recharts/es6/util/DataUtils.js.map +1 -0
  931. package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js +58 -0
  932. package/dist/node_modules/recharts/es6/util/DetectReferenceElementsDomain.js.map +1 -0
  933. package/dist/node_modules/recharts/es6/util/Events.js +7 -0
  934. package/dist/node_modules/recharts/es6/util/Events.js.map +1 -0
  935. package/dist/node_modules/recharts/es6/util/Global.js +21 -0
  936. package/dist/node_modules/recharts/es6/util/Global.js.map +1 -0
  937. package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js +9 -0
  938. package/dist/node_modules/recharts/es6/util/IfOverflowMatches.js.map +1 -0
  939. package/dist/node_modules/recharts/es6/util/LogUtils.js +15 -0
  940. package/dist/node_modules/recharts/es6/util/LogUtils.js.map +1 -0
  941. package/dist/node_modules/recharts/es6/util/PolarUtils.js +116 -0
  942. package/dist/node_modules/recharts/es6/util/PolarUtils.js.map +1 -0
  943. package/dist/node_modules/recharts/es6/util/ReactUtils.js +137 -0
  944. package/dist/node_modules/recharts/es6/util/ReactUtils.js.map +1 -0
  945. package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js +181 -0
  946. package/dist/node_modules/recharts/es6/util/ReduceCSSCalc.js.map +1 -0
  947. package/dist/node_modules/recharts/es6/util/ShallowEqual.js +10 -0
  948. package/dist/node_modules/recharts/es6/util/ShallowEqual.js.map +1 -0
  949. package/dist/node_modules/recharts/es6/util/TickUtils.js +31 -0
  950. package/dist/node_modules/recharts/es6/util/TickUtils.js.map +1 -0
  951. package/dist/node_modules/recharts/es6/util/calculateViewBox.js +25 -0
  952. package/dist/node_modules/recharts/es6/util/calculateViewBox.js.map +1 -0
  953. package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js +23 -0
  954. package/dist/node_modules/recharts/es6/util/cursor/getCursorPoints.js.map +1 -0
  955. package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js +16 -0
  956. package/dist/node_modules/recharts/es6/util/cursor/getCursorRectangle.js.map +1 -0
  957. package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js +17 -0
  958. package/dist/node_modules/recharts/es6/util/cursor/getRadialCursorPoints.js.map +1 -0
  959. package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js +12 -0
  960. package/dist/node_modules/recharts/es6/util/getEveryNthWithCondition.js.map +1 -0
  961. package/dist/node_modules/recharts/es6/util/getLegendProps.js +88 -0
  962. package/dist/node_modules/recharts/es6/util/getLegendProps.js.map +1 -0
  963. package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js +13 -0
  964. package/dist/node_modules/recharts/es6/util/isDomainSpecifiedByUser.js.map +1 -0
  965. package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js +12 -0
  966. package/dist/node_modules/recharts/es6/util/payload/getUniqPayload.js.map +1 -0
  967. package/dist/node_modules/recharts/es6/util/tooltip/translate.js +87 -0
  968. package/dist/node_modules/recharts/es6/util/tooltip/translate.js.map +1 -0
  969. package/dist/node_modules/recharts/es6/util/types.js +43 -0
  970. package/dist/node_modules/recharts/es6/util/types.js.map +1 -0
  971. package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js +132 -0
  972. package/dist/node_modules/recharts-scale/es6/getNiceTickValues.js.map +1 -0
  973. package/dist/node_modules/recharts-scale/es6/index.js +1 -0
  974. package/dist/node_modules/recharts-scale/es6/util/arithmetic.js +32 -0
  975. package/dist/node_modules/recharts-scale/es6/util/arithmetic.js.map +1 -0
  976. package/dist/node_modules/recharts-scale/es6/util/utils.js +79 -0
  977. package/dist/node_modules/recharts-scale/es6/util/utils.js.map +1 -0
  978. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +1674 -0
  979. package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
  980. package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js +13 -0
  981. package/dist/node_modules/tiny-invariant/dist/esm/tiny-invariant.js.map +1 -0
  982. package/dist/node_modules/victory-vendor/es/d3-scale.js +53 -0
  983. package/dist/node_modules/victory-vendor/es/d3-scale.js.map +1 -0
  984. package/package.json +107 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AddPropertyPage.js","names":[],"sources":["../../../../src/housingvista/pages/properties/AddPropertyPage.tsx"],"sourcesContent":["/**\n * HousingVista Add Property Page\n * Multi-step property creation form.\n * Migrated from legacy housingvista-frontend add-property.tsx\n * @module housingvista\n */\n\nimport { useState, useCallback } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport {\n Home,\n MapPin,\n DollarSign,\n Bed,\n Bath,\n Maximize,\n Calendar,\n Upload,\n CheckCircle,\n ChevronLeft,\n ChevronRight,\n Wifi,\n Car,\n Waves,\n Dumbbell,\n TreePine,\n Shield,\n Flame,\n Wind,\n} from 'lucide-react';\nimport { PageLayout, Breadcrumbs } from '../../components';\nimport type { BreadcrumbItem } from '../../components';\nimport { cn } from '../../utils/helpers';\n\n// ---- Step definitions ----\nconst steps = [\n { id: 'basic', label: 'Basic Info', icon: Home },\n { id: 'location', label: 'Location', icon: MapPin },\n { id: 'specs', label: 'Specifications', icon: Maximize },\n { id: 'amenities', label: 'Amenities', icon: Wifi },\n { id: 'pricing', label: 'Pricing', icon: DollarSign },\n { id: 'images', label: 'Images', icon: Upload },\n] as const;\n\n// ---- Amenity options ----\nconst amenityOptions = [\n { id: 'swimming_pool', label: 'Swimming Pool', icon: Waves },\n { id: 'gym', label: 'Gym / Fitness', icon: Dumbbell },\n { id: 'parking', label: 'Parking', icon: Car },\n { id: 'garden', label: 'Garden', icon: TreePine },\n { id: 'security', label: '24/7 Security', icon: Shield },\n { id: 'wifi', label: 'Wi-Fi', icon: Wifi },\n { id: 'fireplace', label: 'Fireplace', icon: Flame },\n { id: 'ac', label: 'Central AC', icon: Wind },\n];\n\nconst breadcrumbs: BreadcrumbItem[] = [{ label: 'Properties', href: '../' }, { label: 'Add New' }];\n\nexport const AddPropertyPage = () => {\n const navigate = useNavigate();\n const [currentStep, setCurrentStep] = useState(0);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [showSuccess, setShowSuccess] = useState(false);\n\n const [formData, setFormData] = useState({\n // Basic Info\n title: '',\n description: '',\n propertyType: 'residential',\n category: 'apartment',\n listingType: 'sale',\n // Location\n address: '',\n city: '',\n state: '',\n zipCode: '',\n neighborhood: '',\n country: 'USA',\n // Specifications\n bedrooms: '',\n bathrooms: '',\n area: '',\n floors: '1',\n parking: '0',\n yearBuilt: '',\n furnishing: 'unfurnished',\n facing: 'North',\n // Amenities\n amenities: [] as string[],\n // Pricing\n price: '',\n currency: 'USD',\n negotiable: false,\n // Images (mock)\n images: [] as string[],\n });\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => {\n const { name, value, type } = e.target;\n setFormData((prev) => ({\n ...prev,\n [name]: type === 'checkbox' ? (e.target as HTMLInputElement).checked : value,\n }));\n },\n []\n );\n\n const toggleAmenity = useCallback((id: string) => {\n setFormData((prev) => ({\n ...prev,\n amenities: prev.amenities.includes(id) ? prev.amenities.filter((a) => a !== id) : [...prev.amenities, id],\n }));\n }, []);\n\n const canGoNext = () => {\n switch (currentStep) {\n case 0:\n return formData.title.trim() !== '' && formData.description.trim() !== '';\n case 1:\n return formData.address.trim() !== '' && formData.city.trim() !== '' && formData.state.trim() !== '';\n case 2:\n return formData.area.trim() !== '';\n case 3:\n return true;\n case 4:\n return formData.price.trim() !== '';\n case 5:\n return true;\n default:\n return false;\n }\n };\n\n const handleSubmit = async () => {\n setIsSubmitting(true);\n // Simulate API call\n await new Promise((resolve) => setTimeout(resolve, 1500));\n setIsSubmitting(false);\n setShowSuccess(true);\n setTimeout(() => {\n navigate('../');\n }, 2000);\n };\n\n const isLastStep = currentStep === steps.length - 1;\n\n return (\n <PageLayout title=\"Add New Property\" description=\"List your property for sale or rent\">\n <Breadcrumbs items={breadcrumbs} />\n\n {/* Success Toast */}\n {showSuccess && (\n <div className=\"flex items-center gap-3 rounded-lg border border-emerald-200 bg-emerald-50 p-4 dark:border-emerald-800 dark:bg-emerald-900/20\">\n <CheckCircle className=\"h-5 w-5 text-emerald-600 dark:text-emerald-400\" />\n <p className=\"text-sm font-medium text-emerald-800 dark:text-emerald-300\">\n Property added successfully! Redirecting...\n </p>\n </div>\n )}\n\n {/* Step Indicators */}\n <div className=\"overflow-x-auto\">\n <div className=\"flex items-center gap-1 min-w-max\">\n {steps.map((step, index) => {\n const Icon = step.icon;\n const isActive = index === currentStep;\n const isCompleted = index < currentStep;\n return (\n <div key={step.id} className=\"flex items-center\">\n <button\n onClick={() => index <= currentStep && setCurrentStep(index)}\n className={cn(\n 'flex items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium transition-colors',\n isActive && 'bg-foreground text-background',\n isCompleted && 'bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400',\n !isActive && !isCompleted && 'text-muted-foreground'\n )}\n disabled={index > currentStep}\n >\n {isCompleted ? <CheckCircle className=\"h-4 w-4\" /> : <Icon className=\"h-4 w-4\" />}\n <span className=\"hidden sm:inline\">{step.label}</span>\n <span className=\"sm:hidden\">{index + 1}</span>\n </button>\n {index < steps.length - 1 && (\n <div className={cn('mx-1 h-px w-6', isCompleted ? 'bg-emerald-400' : 'bg-border')} />\n )}\n </div>\n );\n })}\n </div>\n </div>\n\n {/* Form Content */}\n <div className=\"max-w-3xl\">\n <div className=\"rounded-lg border border-border bg-card p-6\">\n {/* Step 0: Basic Info */}\n {currentStep === 0 && (\n <div className=\"space-y-4\">\n <h3 className=\"text-lg font-semibold text-foreground\">Basic Information</h3>\n <div>\n <label htmlFor=\"title\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Property Title *\n </label>\n <input\n id=\"title\"\n name=\"title\"\n value={formData.title}\n onChange={handleChange}\n placeholder=\"e.g., Luxury 3BHK Apartment in Downtown\"\n required\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label htmlFor=\"description\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Description *\n </label>\n <textarea\n id=\"description\"\n name=\"description\"\n value={formData.description}\n onChange={handleChange}\n placeholder=\"Describe your property in detail...\"\n required\n rows={4}\n className=\"w-full rounded-md border border-border bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2\">\n <div>\n <label htmlFor=\"propertyType\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Property Type *\n </label>\n <select\n id=\"propertyType\"\n name=\"propertyType\"\n value={formData.propertyType}\n onChange={handleChange}\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n <option value=\"residential\">Residential</option>\n <option value=\"commercial\">Commercial</option>\n <option value=\"industrial\">Industrial</option>\n <option value=\"agricultural\">Agricultural</option>\n <option value=\"mixed_use\">Mixed Use</option>\n </select>\n </div>\n <div>\n <label htmlFor=\"category\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Category *\n </label>\n <select\n id=\"category\"\n name=\"category\"\n value={formData.category}\n onChange={handleChange}\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n <option value=\"apartment\">Apartment</option>\n <option value=\"house\">House</option>\n <option value=\"villa\">Villa</option>\n <option value=\"office\">Office</option>\n <option value=\"retail\">Retail</option>\n <option value=\"warehouse\">Warehouse</option>\n <option value=\"land\">Land</option>\n <option value=\"plot\">Plot</option>\n </select>\n </div>\n </div>\n <div>\n <label htmlFor=\"listingType\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Listing Type *\n </label>\n <select\n id=\"listingType\"\n name=\"listingType\"\n value={formData.listingType}\n onChange={handleChange}\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring sm:max-w-xs\"\n >\n <option value=\"sale\">For Sale</option>\n <option value=\"rent\">For Rent</option>\n <option value=\"lease\">For Lease</option>\n </select>\n </div>\n </div>\n )}\n\n {/* Step 1: Location */}\n {currentStep === 1 && (\n <div className=\"space-y-4\">\n <h3 className=\"flex items-center gap-2 text-lg font-semibold text-foreground\">\n <MapPin className=\"h-5 w-5\" />\n Location Details\n </h3>\n <div>\n <label htmlFor=\"address\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Street Address *\n </label>\n <input\n id=\"address\"\n name=\"address\"\n value={formData.address}\n onChange={handleChange}\n placeholder=\"e.g., 123 Main Street, Unit 2504\"\n required\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label htmlFor=\"neighborhood\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Neighborhood\n </label>\n <input\n id=\"neighborhood\"\n name=\"neighborhood\"\n value={formData.neighborhood}\n onChange={handleChange}\n placeholder=\"e.g., Midtown\"\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-3\">\n <div>\n <label htmlFor=\"city\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n City *\n </label>\n <input\n id=\"city\"\n name=\"city\"\n value={formData.city}\n onChange={handleChange}\n placeholder=\"City\"\n required\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label htmlFor=\"state\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n State *\n </label>\n <input\n id=\"state\"\n name=\"state\"\n value={formData.state}\n onChange={handleChange}\n placeholder=\"State\"\n required\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label htmlFor=\"zipCode\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n ZIP Code *\n </label>\n <input\n id=\"zipCode\"\n name=\"zipCode\"\n value={formData.zipCode}\n onChange={handleChange}\n placeholder=\"ZIP Code\"\n required\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n </div>\n <div>\n <label htmlFor=\"country\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Country\n </label>\n <select\n id=\"country\"\n name=\"country\"\n value={formData.country}\n onChange={handleChange}\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring sm:max-w-xs\"\n >\n <option value=\"USA\">United States</option>\n <option value=\"Canada\">Canada</option>\n <option value=\"UK\">United Kingdom</option>\n <option value=\"India\">India</option>\n </select>\n </div>\n </div>\n )}\n\n {/* Step 2: Specifications */}\n {currentStep === 2 && (\n <div className=\"space-y-4\">\n <h3 className=\"text-lg font-semibold text-foreground\">Property Specifications</h3>\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2\">\n <div>\n <label\n htmlFor=\"area\"\n className=\"mb-1.5 flex items-center gap-1.5 text-sm font-medium text-foreground\"\n >\n <Maximize className=\"h-4 w-4\" />\n Total Area (sq ft) *\n </label>\n <input\n id=\"area\"\n name=\"area\"\n type=\"number\"\n value={formData.area}\n onChange={handleChange}\n placeholder=\"Enter area\"\n required\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label\n htmlFor=\"yearBuilt\"\n className=\"mb-1.5 flex items-center gap-1.5 text-sm font-medium text-foreground\"\n >\n <Calendar className=\"h-4 w-4\" />\n Year Built\n </label>\n <input\n id=\"yearBuilt\"\n name=\"yearBuilt\"\n type=\"number\"\n value={formData.yearBuilt}\n onChange={handleChange}\n placeholder=\"YYYY\"\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n </div>\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-3\">\n <div>\n <label\n htmlFor=\"bedrooms\"\n className=\"mb-1.5 flex items-center gap-1.5 text-sm font-medium text-foreground\"\n >\n <Bed className=\"h-4 w-4\" />\n Bedrooms\n </label>\n <input\n id=\"bedrooms\"\n name=\"bedrooms\"\n type=\"number\"\n value={formData.bedrooms}\n onChange={handleChange}\n placeholder=\"0\"\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label\n htmlFor=\"bathrooms\"\n className=\"mb-1.5 flex items-center gap-1.5 text-sm font-medium text-foreground\"\n >\n <Bath className=\"h-4 w-4\" />\n Bathrooms\n </label>\n <input\n id=\"bathrooms\"\n name=\"bathrooms\"\n type=\"number\"\n value={formData.bathrooms}\n onChange={handleChange}\n placeholder=\"0\"\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label\n htmlFor=\"parking\"\n className=\"mb-1.5 flex items-center gap-1.5 text-sm font-medium text-foreground\"\n >\n <Car className=\"h-4 w-4\" />\n Parking Spots\n </label>\n <input\n id=\"parking\"\n name=\"parking\"\n type=\"number\"\n value={formData.parking}\n onChange={handleChange}\n placeholder=\"0\"\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n </div>\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2\">\n <div>\n <label htmlFor=\"furnishing\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Furnishing Status\n </label>\n <select\n id=\"furnishing\"\n name=\"furnishing\"\n value={formData.furnishing}\n onChange={handleChange}\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n <option value=\"unfurnished\">Unfurnished</option>\n <option value=\"semi_furnished\">Semi Furnished</option>\n <option value=\"furnished\">Furnished</option>\n </select>\n </div>\n <div>\n <label htmlFor=\"facing\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Facing Direction\n </label>\n <select\n id=\"facing\"\n name=\"facing\"\n value={formData.facing}\n onChange={handleChange}\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n <option value=\"North\">North</option>\n <option value=\"South\">South</option>\n <option value=\"East\">East</option>\n <option value=\"West\">West</option>\n <option value=\"Northeast\">Northeast</option>\n <option value=\"Northwest\">Northwest</option>\n <option value=\"Southeast\">Southeast</option>\n <option value=\"Southwest\">Southwest</option>\n </select>\n </div>\n </div>\n </div>\n )}\n\n {/* Step 3: Amenities */}\n {currentStep === 3 && (\n <div className=\"space-y-4\">\n <h3 className=\"text-lg font-semibold text-foreground\">Property Amenities</h3>\n <p className=\"text-sm text-muted-foreground\">Select all amenities available at this property.</p>\n <div className=\"grid grid-cols-2 gap-3 sm:grid-cols-4\">\n {amenityOptions.map((amenity) => {\n const Icon = amenity.icon;\n const isSelected = formData.amenities.includes(amenity.id);\n return (\n <button\n key={amenity.id}\n type=\"button\"\n onClick={() => toggleAmenity(amenity.id)}\n className={cn(\n 'flex flex-col items-center gap-2 rounded-lg border p-4 text-sm font-medium transition-colors',\n isSelected\n ? 'border-foreground bg-foreground/5 text-foreground'\n : 'border-border text-muted-foreground hover:bg-muted/50'\n )}\n >\n <Icon className=\"h-6 w-6\" />\n <span>{amenity.label}</span>\n {isSelected && <CheckCircle className=\"h-4 w-4 text-emerald-600 dark:text-emerald-400\" />}\n </button>\n );\n })}\n </div>\n </div>\n )}\n\n {/* Step 4: Pricing */}\n {currentStep === 4 && (\n <div className=\"space-y-4\">\n <h3 className=\"flex items-center gap-2 text-lg font-semibold text-foreground\">\n <DollarSign className=\"h-5 w-5\" />\n Pricing Details\n </h3>\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2\">\n <div>\n <label htmlFor=\"price\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Price *\n </label>\n <input\n id=\"price\"\n name=\"price\"\n type=\"number\"\n value={formData.price}\n onChange={handleChange}\n placeholder=\"Enter price\"\n required\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n />\n </div>\n <div>\n <label htmlFor=\"currency\" className=\"mb-1.5 block text-sm font-medium text-foreground\">\n Currency\n </label>\n <select\n id=\"currency\"\n name=\"currency\"\n value={formData.currency}\n onChange={handleChange}\n className=\"h-10 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n <option value=\"USD\">USD ($)</option>\n <option value=\"EUR\">EUR</option>\n <option value=\"GBP\">GBP</option>\n <option value=\"INR\">INR</option>\n </select>\n </div>\n </div>\n <div className=\"flex items-center gap-2\">\n <input\n type=\"checkbox\"\n id=\"negotiable\"\n name=\"negotiable\"\n checked={formData.negotiable}\n onChange={handleChange}\n className=\"h-4 w-4 rounded border-border\"\n />\n <label htmlFor=\"negotiable\" className=\"text-sm text-foreground\">\n Price is negotiable\n </label>\n </div>\n </div>\n )}\n\n {/* Step 5: Images */}\n {currentStep === 5 && (\n <div className=\"space-y-4\">\n <h3 className=\"flex items-center gap-2 text-lg font-semibold text-foreground\">\n <Upload className=\"h-5 w-5\" />\n Property Images\n </h3>\n <div className=\"rounded-lg border-2 border-dashed border-border p-8 text-center\">\n <Upload className=\"mx-auto h-12 w-12 text-muted-foreground\" />\n <p className=\"mt-3 text-sm text-muted-foreground\">Drag and drop images here, or click to browse</p>\n <p className=\"mt-1 text-xs text-muted-foreground\">Upload up to 10 images (JPG, PNG, max 5MB each)</p>\n <button\n type=\"button\"\n className=\"mt-4 rounded-md border border-border px-4 py-2 text-sm font-medium text-foreground transition-colors hover:bg-muted\"\n >\n Choose Files\n </button>\n </div>\n {/* Mock uploaded images placeholder */}\n <div className=\"grid grid-cols-3 gap-3 sm:grid-cols-4\">\n {[1, 2, 3].map((i) => (\n <div\n key={i}\n className=\"flex aspect-square items-center justify-center rounded-lg border border-border bg-muted/50\"\n >\n <Home className=\"h-8 w-8 text-muted-foreground/30\" />\n </div>\n ))}\n </div>\n </div>\n )}\n </div>\n\n {/* Navigation Buttons */}\n <div className=\"mt-6 flex items-center justify-between\">\n <button\n type=\"button\"\n onClick={() => (currentStep === 0 ? navigate('../') : setCurrentStep((s) => s - 1))}\n disabled={isSubmitting}\n className=\"inline-flex items-center gap-2 rounded-md border border-border px-4 py-2 text-sm font-medium text-foreground transition-colors hover:bg-muted disabled:opacity-50\"\n >\n <ChevronLeft className=\"h-4 w-4\" />\n {currentStep === 0 ? 'Cancel' : 'Previous'}\n </button>\n\n {isLastStep ? (\n <button\n type=\"button\"\n onClick={handleSubmit}\n disabled={!canGoNext() || isSubmitting}\n className=\"inline-flex items-center gap-2 rounded-md bg-foreground px-6 py-2 text-sm font-medium text-background transition-colors hover:bg-foreground/90 disabled:opacity-50\"\n >\n {isSubmitting ? 'Adding Property...' : 'Submit Property'}\n </button>\n ) : (\n <button\n type=\"button\"\n onClick={() => setCurrentStep((s) => s + 1)}\n disabled={!canGoNext()}\n className=\"inline-flex items-center gap-2 rounded-md bg-foreground px-4 py-2 text-sm font-medium text-background transition-colors hover:bg-foreground/90 disabled:opacity-50\"\n >\n Next\n <ChevronRight className=\"h-4 w-4\" />\n </button>\n )}\n </div>\n </div>\n </PageLayout>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * HousingVista Properties Listing Page
3
+ * Migrated from legacy housingvista-frontend properties.tsx
4
+ * @module housingvista
5
+ */
6
+ export declare const PropertiesPage: () => import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=PropertiesPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertiesPage.d.ts","sourceRoot":"","sources":["../../../../src/housingvista/pages/properties/PropertiesPage.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,eAAO,MAAM,cAAc,+CAgZ1B,CAAC"}
@@ -0,0 +1,385 @@
1
+ import { cn as e } from "../../utils/helpers.js";
2
+ import { PageLayout as t } from "../../components/PageLayout.js";
3
+ import { StatCard as n } from "../../components/StatCard.js";
4
+ import { EmptyState as r } from "../../components/EmptyState.js";
5
+ import { FilterBar as i } from "../../components/FilterBar.js";
6
+ import { PropertyCard as a } from "../../components/PropertyCard.js";
7
+ import "../../components/index.js";
8
+ import { useProperties as o } from "../../hooks/index.js";
9
+ import { useMemo as s, useState as c } from "react";
10
+ import { Building as l, Grid as u, List as d, Plus as f, SlidersHorizontal as p, X as m } from "lucide-react";
11
+ import { useNavigate as h } from "react-router-dom";
12
+ import { jsx as g, jsxs as _ } from "react/jsx-runtime";
13
+ import { useI18n as v } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
14
+ //#region src/housingvista/pages/properties/PropertiesPage.tsx
15
+ var y = () => {
16
+ let y = h(), { t: b } = v(), { data: x } = o(), S = (e, t) => {
17
+ let n = b(e);
18
+ return n === e ? t : n;
19
+ }, C = [
20
+ {
21
+ value: "all",
22
+ label: S("housingvista.properties.filters.propertyTypes.all", "All Types")
23
+ },
24
+ {
25
+ value: "residential",
26
+ label: S("housingvista.properties.filters.propertyTypes.residential", "Residential")
27
+ },
28
+ {
29
+ value: "commercial",
30
+ label: S("housingvista.properties.filters.propertyTypes.commercial", "Commercial")
31
+ },
32
+ {
33
+ value: "industrial",
34
+ label: S("housingvista.properties.filters.propertyTypes.industrial", "Industrial")
35
+ },
36
+ {
37
+ value: "agricultural",
38
+ label: S("housingvista.properties.filters.propertyTypes.agricultural", "Agricultural")
39
+ },
40
+ {
41
+ value: "mixed_use",
42
+ label: S("housingvista.properties.filters.propertyTypes.mixedUse", "Mixed Use")
43
+ }
44
+ ], w = [
45
+ {
46
+ value: "all",
47
+ label: S("housingvista.properties.filters.propertyStatuses.all", "All Status")
48
+ },
49
+ {
50
+ value: "for_sale",
51
+ label: S("housingvista.properties.filters.propertyStatuses.forSale", "For Sale")
52
+ },
53
+ {
54
+ value: "for_rent",
55
+ label: S("housingvista.properties.filters.propertyStatuses.forRent", "For Rent")
56
+ },
57
+ {
58
+ value: "sold",
59
+ label: S("housingvista.properties.filters.propertyStatuses.sold", "Sold")
60
+ },
61
+ {
62
+ value: "rented",
63
+ label: S("housingvista.properties.filters.propertyStatuses.rented", "Rented")
64
+ },
65
+ {
66
+ value: "under_contract",
67
+ label: S("housingvista.properties.filters.propertyStatuses.underContract", "Under Contract")
68
+ },
69
+ {
70
+ value: "off_market",
71
+ label: S("housingvista.properties.filters.propertyStatuses.offMarket", "Off Market")
72
+ }
73
+ ], T = [
74
+ {
75
+ value: "all",
76
+ label: S("housingvista.properties.filters.propertyCategories.all", "All Categories")
77
+ },
78
+ {
79
+ value: "apartment",
80
+ label: S("housingvista.properties.filters.propertyCategories.apartment", "Apartment")
81
+ },
82
+ {
83
+ value: "house",
84
+ label: S("housingvista.properties.filters.propertyCategories.house", "House")
85
+ },
86
+ {
87
+ value: "villa",
88
+ label: S("housingvista.properties.filters.propertyCategories.villa", "Villa")
89
+ },
90
+ {
91
+ value: "office",
92
+ label: S("housingvista.properties.filters.propertyCategories.office", "Office")
93
+ },
94
+ {
95
+ value: "retail",
96
+ label: S("housingvista.properties.filters.propertyCategories.retail", "Retail")
97
+ },
98
+ {
99
+ value: "warehouse",
100
+ label: S("housingvista.properties.filters.propertyCategories.warehouse", "Warehouse")
101
+ },
102
+ {
103
+ value: "land",
104
+ label: S("housingvista.properties.filters.propertyCategories.land", "Land")
105
+ },
106
+ {
107
+ value: "plot",
108
+ label: S("housingvista.properties.filters.propertyCategories.plot", "Plot")
109
+ }
110
+ ], E = [
111
+ {
112
+ value: "all",
113
+ label: S("housingvista.properties.filters.priceRanges.all", "Any Price"),
114
+ min: 0,
115
+ max: Infinity
116
+ },
117
+ {
118
+ value: "under_100k",
119
+ label: S("housingvista.properties.filters.priceRanges.under100k", "Under $100K"),
120
+ min: 0,
121
+ max: 1e5
122
+ },
123
+ {
124
+ value: "100k_500k",
125
+ label: S("housingvista.properties.filters.priceRanges.100kTo500k", "$100K - $500K"),
126
+ min: 1e5,
127
+ max: 5e5
128
+ },
129
+ {
130
+ value: "500k_1m",
131
+ label: S("housingvista.properties.filters.priceRanges.500kTo1m", "$500K - $1M"),
132
+ min: 5e5,
133
+ max: 1e6
134
+ },
135
+ {
136
+ value: "over_1m",
137
+ label: S("housingvista.properties.filters.priceRanges.over1m", "Over $1M"),
138
+ min: 1e6,
139
+ max: Infinity
140
+ }
141
+ ], D = [
142
+ {
143
+ value: "all",
144
+ label: S("housingvista.properties.filters.bedrooms.all", "Any Bedrooms")
145
+ },
146
+ {
147
+ value: "1",
148
+ label: "1+"
149
+ },
150
+ {
151
+ value: "2",
152
+ label: "2+"
153
+ },
154
+ {
155
+ value: "3",
156
+ label: "3+"
157
+ },
158
+ {
159
+ value: "4",
160
+ label: "4+"
161
+ },
162
+ {
163
+ value: "5",
164
+ label: "5+"
165
+ }
166
+ ], [O, k] = c(""), [A, j] = c("all"), [M, N] = c("all"), [P, F] = c("all"), [I, L] = c("all"), [R, z] = c("all"), [B, V] = c("grid"), [H, U] = c(!1), W = E.find((e) => e.value === I) ?? E[0], G = R === "all" ? 0 : Number(R), K = s(() => x.filter((e) => {
167
+ let t = !O || e.title.toLowerCase().includes(O.toLowerCase()) || e.description.toLowerCase().includes(O.toLowerCase()) || e.location.city.toLowerCase().includes(O.toLowerCase()) || e.location.neighborhood.toLowerCase().includes(O.toLowerCase()), n = A === "all" || e.type === A, r = M === "all" || e.status === M, i = P === "all" || e.category === P, a = e.price.amount >= W.min && e.price.amount <= W.max, o = (e.specifications.bedrooms ?? 0) >= G;
168
+ return t && n && r && i && a && o;
169
+ }), [
170
+ x,
171
+ O,
172
+ A,
173
+ M,
174
+ P,
175
+ W,
176
+ G
177
+ ]), q = s(() => {
178
+ let e = K.length;
179
+ return {
180
+ total: e,
181
+ forSale: K.filter((e) => e.status === "for_sale").length,
182
+ forRent: K.filter((e) => e.status === "for_rent").length,
183
+ avgPrice: e > 0 ? K.reduce((e, t) => e + t.price.amount, 0) / e : 0
184
+ };
185
+ }, [K]), J = O || A !== "all" || M !== "all" || P !== "all" || I !== "all" || R !== "all", Y = () => {
186
+ k(""), j("all"), N("all"), F("all"), L("all"), z("all");
187
+ };
188
+ return /* @__PURE__ */ _(t, {
189
+ title: S("housingvista.properties.title", "Properties"),
190
+ description: S("housingvista.properties.description", "Discover your perfect property from our comprehensive listings"),
191
+ actions: /* @__PURE__ */ _("button", {
192
+ onClick: () => y("new"),
193
+ className: "inline-flex items-center gap-2 rounded-md bg-foreground px-4 py-2 text-sm font-medium text-background transition-colors hover:bg-foreground/90",
194
+ children: [/* @__PURE__ */ g(f, { className: "h-4 w-4" }), S("housingvista.properties.actions.addProperty", "Add Property")]
195
+ }),
196
+ children: [
197
+ /* @__PURE__ */ _("div", {
198
+ className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
199
+ children: [
200
+ /* @__PURE__ */ g(n, {
201
+ label: S("housingvista.properties.stats.totalProperties", "Total Properties"),
202
+ value: q.total,
203
+ icon: /* @__PURE__ */ g(l, { className: "h-5 w-5" })
204
+ }),
205
+ /* @__PURE__ */ g(n, {
206
+ label: S("housingvista.properties.stats.forSale", "For Sale"),
207
+ value: q.forSale,
208
+ trend: "up",
209
+ change: 5
210
+ }),
211
+ /* @__PURE__ */ g(n, {
212
+ label: S("housingvista.properties.stats.forRent", "For Rent"),
213
+ value: q.forRent,
214
+ trend: "up",
215
+ change: 3
216
+ }),
217
+ /* @__PURE__ */ g(n, {
218
+ label: S("housingvista.properties.stats.avgPrice", "Avg. Price"),
219
+ value: q.avgPrice,
220
+ prefix: "$"
221
+ })
222
+ ]
223
+ }),
224
+ /* @__PURE__ */ g(i, {
225
+ searchValue: O,
226
+ onSearchChange: k,
227
+ searchPlaceholder: S("housingvista.properties.search.placeholder", "Search properties by name, city, or neighborhood..."),
228
+ filters: /* @__PURE__ */ _("button", {
229
+ onClick: () => U((e) => !e),
230
+ className: e("inline-flex items-center gap-2 rounded-md border border-border px-3 py-2 text-sm font-medium transition-colors", H ? "bg-foreground text-background" : "text-foreground hover:bg-muted"),
231
+ children: [
232
+ /* @__PURE__ */ g(p, { className: "h-4 w-4" }),
233
+ S("housingvista.properties.filters.toggle", "Filters"),
234
+ J && /* @__PURE__ */ g("span", {
235
+ className: "flex h-5 w-5 items-center justify-center rounded-full bg-primary text-[10px] font-bold text-primary-foreground",
236
+ children: "!"
237
+ })
238
+ ]
239
+ }),
240
+ actions: /* @__PURE__ */ _("div", {
241
+ className: "flex items-center gap-1",
242
+ children: [/* @__PURE__ */ g("button", {
243
+ onClick: () => V("grid"),
244
+ className: e("rounded-md p-2 transition-colors", B === "grid" ? "bg-foreground text-background" : "text-muted-foreground hover:text-foreground hover:bg-muted"),
245
+ children: /* @__PURE__ */ g(u, { className: "h-4 w-4" })
246
+ }), /* @__PURE__ */ g("button", {
247
+ onClick: () => V("list"),
248
+ className: e("rounded-md p-2 transition-colors", B === "list" ? "bg-foreground text-background" : "text-muted-foreground hover:text-foreground hover:bg-muted"),
249
+ children: /* @__PURE__ */ g(d, { className: "h-4 w-4" })
250
+ })]
251
+ })
252
+ }),
253
+ H && /* @__PURE__ */ _("div", {
254
+ className: "rounded-lg border border-border bg-card p-4",
255
+ children: [/* @__PURE__ */ _("div", {
256
+ className: "flex items-center justify-between mb-4",
257
+ children: [/* @__PURE__ */ g("h3", {
258
+ className: "text-sm font-medium text-foreground",
259
+ children: S("housingvista.properties.filters.title", "Filters")
260
+ }), J && /* @__PURE__ */ _("button", {
261
+ onClick: Y,
262
+ className: "inline-flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground",
263
+ children: [/* @__PURE__ */ g(m, { className: "h-3 w-3" }), S("housingvista.properties.filters.clearAll", "Clear All")]
264
+ })]
265
+ }), /* @__PURE__ */ _("div", {
266
+ className: "grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-5",
267
+ children: [
268
+ /* @__PURE__ */ _("div", { children: [/* @__PURE__ */ g("label", {
269
+ className: "mb-1.5 block text-xs font-medium text-muted-foreground",
270
+ children: S("housingvista.properties.filters.labels.propertyType", "Property Type")
271
+ }), /* @__PURE__ */ g("select", {
272
+ value: A,
273
+ onChange: (e) => j(e.target.value),
274
+ className: "h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring",
275
+ children: C.map((e) => /* @__PURE__ */ g("option", {
276
+ value: e.value,
277
+ children: e.label
278
+ }, e.value))
279
+ })] }),
280
+ /* @__PURE__ */ _("div", { children: [/* @__PURE__ */ g("label", {
281
+ className: "mb-1.5 block text-xs font-medium text-muted-foreground",
282
+ children: S("housingvista.properties.filters.labels.status", "Status")
283
+ }), /* @__PURE__ */ g("select", {
284
+ value: M,
285
+ onChange: (e) => N(e.target.value),
286
+ className: "h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring",
287
+ children: w.map((e) => /* @__PURE__ */ g("option", {
288
+ value: e.value,
289
+ children: e.label
290
+ }, e.value))
291
+ })] }),
292
+ /* @__PURE__ */ _("div", { children: [/* @__PURE__ */ g("label", {
293
+ className: "mb-1.5 block text-xs font-medium text-muted-foreground",
294
+ children: S("housingvista.properties.filters.labels.category", "Category")
295
+ }), /* @__PURE__ */ g("select", {
296
+ value: P,
297
+ onChange: (e) => F(e.target.value),
298
+ className: "h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring",
299
+ children: T.map((e) => /* @__PURE__ */ g("option", {
300
+ value: e.value,
301
+ children: e.label
302
+ }, e.value))
303
+ })] }),
304
+ /* @__PURE__ */ _("div", { children: [/* @__PURE__ */ g("label", {
305
+ className: "mb-1.5 block text-xs font-medium text-muted-foreground",
306
+ children: S("housingvista.properties.filters.labels.priceRange", "Price Range")
307
+ }), /* @__PURE__ */ g("select", {
308
+ value: I,
309
+ onChange: (e) => L(e.target.value),
310
+ className: "h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring",
311
+ children: E.map((e) => /* @__PURE__ */ g("option", {
312
+ value: e.value,
313
+ children: e.label
314
+ }, e.value))
315
+ })] }),
316
+ /* @__PURE__ */ _("div", { children: [/* @__PURE__ */ g("label", {
317
+ className: "mb-1.5 block text-xs font-medium text-muted-foreground",
318
+ children: S("housingvista.properties.filters.labels.bedrooms", "Bedrooms")
319
+ }), /* @__PURE__ */ g("select", {
320
+ value: R,
321
+ onChange: (e) => z(e.target.value),
322
+ className: "h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring",
323
+ children: D.map((e) => /* @__PURE__ */ g("option", {
324
+ value: e.value,
325
+ children: e.label
326
+ }, e.value))
327
+ })] })
328
+ ]
329
+ })]
330
+ }),
331
+ /* @__PURE__ */ _("div", {
332
+ className: "flex items-center justify-between",
333
+ children: [/* @__PURE__ */ _("p", {
334
+ className: "text-sm text-muted-foreground",
335
+ children: [
336
+ S("housingvista.properties.results.showing", "Showing"),
337
+ " ",
338
+ K.length,
339
+ " ",
340
+ S("housingvista.properties.results.of", "of"),
341
+ " ",
342
+ x.length,
343
+ " ",
344
+ S("housingvista.properties.results.properties", "properties")
345
+ ]
346
+ }), J && /* @__PURE__ */ g("button", {
347
+ onClick: Y,
348
+ className: "text-sm text-muted-foreground hover:text-foreground",
349
+ children: S("housingvista.properties.results.clearFilters", "Clear Filters")
350
+ })]
351
+ }),
352
+ K.length > 0 ? /* @__PURE__ */ g("div", {
353
+ className: e(B === "grid" ? "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3" : "space-y-4"),
354
+ children: K.map((e) => /* @__PURE__ */ g(a, {
355
+ id: e.id,
356
+ title: e.title,
357
+ price: e.price.amount,
358
+ priceType: e.price.type === "rent" ? "rent" : "sale",
359
+ pricePeriod: e.price.period,
360
+ location: `${e.location.neighborhood}, ${e.location.city}`,
361
+ bedrooms: e.specifications.bedrooms,
362
+ bathrooms: e.specifications.bathrooms,
363
+ area: e.specifications.totalArea,
364
+ imageUrl: e.images[0]?.url,
365
+ status: e.status.replace("_", " "),
366
+ type: e.category,
367
+ onClick: () => y(e.id)
368
+ }, e.id))
369
+ }) : /* @__PURE__ */ g(r, {
370
+ icon: /* @__PURE__ */ g(l, { className: "h-12 w-12" }),
371
+ title: S("housingvista.properties.empty.title", "No properties found"),
372
+ description: S("housingvista.properties.empty.description", "Try adjusting your search criteria or filters to find more properties."),
373
+ action: /* @__PURE__ */ g("button", {
374
+ onClick: Y,
375
+ className: "rounded-md bg-foreground px-4 py-2 text-sm font-medium text-background transition-colors hover:bg-foreground/90",
376
+ children: S("housingvista.properties.empty.clearAllFilters", "Clear All Filters")
377
+ })
378
+ })
379
+ ]
380
+ });
381
+ };
382
+ //#endregion
383
+ export { y as PropertiesPage };
384
+
385
+ //# sourceMappingURL=PropertiesPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertiesPage.js","names":[],"sources":["../../../../src/housingvista/pages/properties/PropertiesPage.tsx"],"sourcesContent":["/**\n * HousingVista Properties Listing Page\n * Migrated from legacy housingvista-frontend properties.tsx\n * @module housingvista\n */\n\nimport { useState, useMemo } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport { Plus, Grid, List, Building, SlidersHorizontal, X } from 'lucide-react';\nimport { PageLayout, FilterBar, PropertyCard, EmptyState, StatCard } from '../../components';\nimport { useProperties } from '../../hooks';\nimport { cn, formatCurrency, formatNumber } from '../../utils/helpers';\nimport type { PropertyType, PropertyStatus, PropertyCategory } from '../../types';\n\nexport const PropertiesPage = () => {\n const navigate = useNavigate();\n const { t } = useI18n();\n const { data: properties } = useProperties();\n\n const tr = (key: string, fallback: string) => {\n const translated = t(key);\n return translated === key ? fallback : translated;\n };\n\n const propertyTypes: { value: PropertyType | 'all'; label: string }[] = [\n { value: 'all', label: tr('housingvista.properties.filters.propertyTypes.all', 'All Types') },\n { value: 'residential', label: tr('housingvista.properties.filters.propertyTypes.residential', 'Residential') },\n { value: 'commercial', label: tr('housingvista.properties.filters.propertyTypes.commercial', 'Commercial') },\n { value: 'industrial', label: tr('housingvista.properties.filters.propertyTypes.industrial', 'Industrial') },\n { value: 'agricultural', label: tr('housingvista.properties.filters.propertyTypes.agricultural', 'Agricultural') },\n { value: 'mixed_use', label: tr('housingvista.properties.filters.propertyTypes.mixedUse', 'Mixed Use') },\n ];\n\n const propertyStatuses: { value: PropertyStatus | 'all'; label: string }[] = [\n { value: 'all', label: tr('housingvista.properties.filters.propertyStatuses.all', 'All Status') },\n { value: 'for_sale', label: tr('housingvista.properties.filters.propertyStatuses.forSale', 'For Sale') },\n { value: 'for_rent', label: tr('housingvista.properties.filters.propertyStatuses.forRent', 'For Rent') },\n { value: 'sold', label: tr('housingvista.properties.filters.propertyStatuses.sold', 'Sold') },\n { value: 'rented', label: tr('housingvista.properties.filters.propertyStatuses.rented', 'Rented') },\n {\n value: 'under_contract',\n label: tr('housingvista.properties.filters.propertyStatuses.underContract', 'Under Contract'),\n },\n { value: 'off_market', label: tr('housingvista.properties.filters.propertyStatuses.offMarket', 'Off Market') },\n ];\n\n const propertyCategories: { value: PropertyCategory | 'all'; label: string }[] = [\n { value: 'all', label: tr('housingvista.properties.filters.propertyCategories.all', 'All Categories') },\n { value: 'apartment', label: tr('housingvista.properties.filters.propertyCategories.apartment', 'Apartment') },\n { value: 'house', label: tr('housingvista.properties.filters.propertyCategories.house', 'House') },\n { value: 'villa', label: tr('housingvista.properties.filters.propertyCategories.villa', 'Villa') },\n { value: 'office', label: tr('housingvista.properties.filters.propertyCategories.office', 'Office') },\n { value: 'retail', label: tr('housingvista.properties.filters.propertyCategories.retail', 'Retail') },\n { value: 'warehouse', label: tr('housingvista.properties.filters.propertyCategories.warehouse', 'Warehouse') },\n { value: 'land', label: tr('housingvista.properties.filters.propertyCategories.land', 'Land') },\n { value: 'plot', label: tr('housingvista.properties.filters.propertyCategories.plot', 'Plot') },\n ];\n\n const priceRanges = [\n { value: 'all', label: tr('housingvista.properties.filters.priceRanges.all', 'Any Price'), min: 0, max: Infinity },\n {\n value: 'under_100k',\n label: tr('housingvista.properties.filters.priceRanges.under100k', 'Under $100K'),\n min: 0,\n max: 100000,\n },\n {\n value: '100k_500k',\n label: tr('housingvista.properties.filters.priceRanges.100kTo500k', '$100K - $500K'),\n min: 100000,\n max: 500000,\n },\n {\n value: '500k_1m',\n label: tr('housingvista.properties.filters.priceRanges.500kTo1m', '$500K - $1M'),\n min: 500000,\n max: 1000000,\n },\n {\n value: 'over_1m',\n label: tr('housingvista.properties.filters.priceRanges.over1m', 'Over $1M'),\n min: 1000000,\n max: Infinity,\n },\n ];\n\n const bedroomOptions = [\n { value: 'all', label: tr('housingvista.properties.filters.bedrooms.all', 'Any Bedrooms') },\n { value: '1', label: '1+' },\n { value: '2', label: '2+' },\n { value: '3', label: '3+' },\n { value: '4', label: '4+' },\n { value: '5', label: '5+' },\n ];\n\n const [searchQuery, setSearchQuery] = useState('');\n const [selectedType, setSelectedType] = useState<PropertyType | 'all'>('all');\n const [selectedStatus, setSelectedStatus] = useState<PropertyStatus | 'all'>('all');\n const [selectedCategory, setSelectedCategory] = useState<PropertyCategory | 'all'>('all');\n const [selectedPriceRange, setSelectedPriceRange] = useState('all');\n const [selectedBedrooms, setSelectedBedrooms] = useState('all');\n const [viewMode, setViewMode] = useState<'grid' | 'list'>('grid');\n const [showFilters, setShowFilters] = useState(false);\n\n const priceRange = priceRanges.find((r) => r.value === selectedPriceRange) ?? priceRanges[0];\n const minBedrooms = selectedBedrooms === 'all' ? 0 : Number(selectedBedrooms);\n\n const filteredProperties = useMemo(() => {\n return properties.filter((property) => {\n const matchesSearch =\n !searchQuery ||\n property.title.toLowerCase().includes(searchQuery.toLowerCase()) ||\n property.description.toLowerCase().includes(searchQuery.toLowerCase()) ||\n property.location.city.toLowerCase().includes(searchQuery.toLowerCase()) ||\n property.location.neighborhood.toLowerCase().includes(searchQuery.toLowerCase());\n\n const matchesType = selectedType === 'all' || property.type === selectedType;\n const matchesStatus = selectedStatus === 'all' || property.status === selectedStatus;\n const matchesCategory = selectedCategory === 'all' || property.category === selectedCategory;\n const matchesPrice = property.price.amount >= priceRange.min && property.price.amount <= priceRange.max;\n const matchesBedrooms = (property.specifications.bedrooms ?? 0) >= minBedrooms;\n\n return matchesSearch && matchesType && matchesStatus && matchesCategory && matchesPrice && matchesBedrooms;\n });\n }, [properties, searchQuery, selectedType, selectedStatus, selectedCategory, priceRange, minBedrooms]);\n\n const stats = useMemo(() => {\n const total = filteredProperties.length;\n const forSale = filteredProperties.filter((p) => p.status === 'for_sale').length;\n const forRent = filteredProperties.filter((p) => p.status === 'for_rent').length;\n const avgPrice = total > 0 ? filteredProperties.reduce((sum, p) => sum + p.price.amount, 0) / total : 0;\n return { total, forSale, forRent, avgPrice };\n }, [filteredProperties]);\n\n const hasActiveFilters =\n searchQuery ||\n selectedType !== 'all' ||\n selectedStatus !== 'all' ||\n selectedCategory !== 'all' ||\n selectedPriceRange !== 'all' ||\n selectedBedrooms !== 'all';\n\n const clearFilters = () => {\n setSearchQuery('');\n setSelectedType('all');\n setSelectedStatus('all');\n setSelectedCategory('all');\n setSelectedPriceRange('all');\n setSelectedBedrooms('all');\n };\n\n return (\n <PageLayout\n title={tr('housingvista.properties.title', 'Properties')}\n description={tr(\n 'housingvista.properties.description',\n 'Discover your perfect property from our comprehensive listings'\n )}\n actions={\n <button\n onClick={() => navigate('new')}\n className=\"inline-flex items-center gap-2 rounded-md bg-foreground px-4 py-2 text-sm font-medium text-background transition-colors hover:bg-foreground/90\"\n >\n <Plus className=\"h-4 w-4\" />\n {tr('housingvista.properties.actions.addProperty', 'Add Property')}\n </button>\n }\n >\n {/* Stats */}\n <div className=\"grid grid-cols-2 gap-4 lg:grid-cols-4\">\n <StatCard\n label={tr('housingvista.properties.stats.totalProperties', 'Total Properties')}\n value={stats.total}\n icon={<Building className=\"h-5 w-5\" />}\n />\n <StatCard\n label={tr('housingvista.properties.stats.forSale', 'For Sale')}\n value={stats.forSale}\n trend=\"up\"\n change={5}\n />\n <StatCard\n label={tr('housingvista.properties.stats.forRent', 'For Rent')}\n value={stats.forRent}\n trend=\"up\"\n change={3}\n />\n <StatCard\n label={tr('housingvista.properties.stats.avgPrice', 'Avg. Price')}\n value={stats.avgPrice}\n prefix=\"$\"\n />\n </div>\n\n {/* Search + View Toggle */}\n <FilterBar\n searchValue={searchQuery}\n onSearchChange={setSearchQuery}\n searchPlaceholder={tr(\n 'housingvista.properties.search.placeholder',\n 'Search properties by name, city, or neighborhood...'\n )}\n filters={\n <button\n onClick={() => setShowFilters((prev) => !prev)}\n className={cn(\n 'inline-flex items-center gap-2 rounded-md border border-border px-3 py-2 text-sm font-medium transition-colors',\n showFilters ? 'bg-foreground text-background' : 'text-foreground hover:bg-muted'\n )}\n >\n <SlidersHorizontal className=\"h-4 w-4\" />\n {tr('housingvista.properties.filters.toggle', 'Filters')}\n {hasActiveFilters && (\n <span className=\"flex h-5 w-5 items-center justify-center rounded-full bg-primary text-[10px] font-bold text-primary-foreground\">\n !\n </span>\n )}\n </button>\n }\n actions={\n <div className=\"flex items-center gap-1\">\n <button\n onClick={() => setViewMode('grid')}\n className={cn(\n 'rounded-md p-2 transition-colors',\n viewMode === 'grid'\n ? 'bg-foreground text-background'\n : 'text-muted-foreground hover:text-foreground hover:bg-muted'\n )}\n >\n <Grid className=\"h-4 w-4\" />\n </button>\n <button\n onClick={() => setViewMode('list')}\n className={cn(\n 'rounded-md p-2 transition-colors',\n viewMode === 'list'\n ? 'bg-foreground text-background'\n : 'text-muted-foreground hover:text-foreground hover:bg-muted'\n )}\n >\n <List className=\"h-4 w-4\" />\n </button>\n </div>\n }\n />\n\n {/* Filter Dropdowns */}\n {showFilters && (\n <div className=\"rounded-lg border border-border bg-card p-4\">\n <div className=\"flex items-center justify-between mb-4\">\n <h3 className=\"text-sm font-medium text-foreground\">\n {tr('housingvista.properties.filters.title', 'Filters')}\n </h3>\n {hasActiveFilters && (\n <button\n onClick={clearFilters}\n className=\"inline-flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground\"\n >\n <X className=\"h-3 w-3\" />\n {tr('housingvista.properties.filters.clearAll', 'Clear All')}\n </button>\n )}\n </div>\n <div className=\"grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-5\">\n {/* Type */}\n <div>\n <label className=\"mb-1.5 block text-xs font-medium text-muted-foreground\">\n {tr('housingvista.properties.filters.labels.propertyType', 'Property Type')}\n </label>\n <select\n value={selectedType}\n onChange={(e) => setSelectedType(e.target.value as PropertyType | 'all')}\n className=\"h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n {propertyTypes.map((t) => (\n <option key={t.value} value={t.value}>\n {t.label}\n </option>\n ))}\n </select>\n </div>\n\n {/* Status */}\n <div>\n <label className=\"mb-1.5 block text-xs font-medium text-muted-foreground\">\n {tr('housingvista.properties.filters.labels.status', 'Status')}\n </label>\n <select\n value={selectedStatus}\n onChange={(e) => setSelectedStatus(e.target.value as PropertyStatus | 'all')}\n className=\"h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n {propertyStatuses.map((s) => (\n <option key={s.value} value={s.value}>\n {s.label}\n </option>\n ))}\n </select>\n </div>\n\n {/* Category */}\n <div>\n <label className=\"mb-1.5 block text-xs font-medium text-muted-foreground\">\n {tr('housingvista.properties.filters.labels.category', 'Category')}\n </label>\n <select\n value={selectedCategory}\n onChange={(e) => setSelectedCategory(e.target.value as PropertyCategory | 'all')}\n className=\"h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n {propertyCategories.map((c) => (\n <option key={c.value} value={c.value}>\n {c.label}\n </option>\n ))}\n </select>\n </div>\n\n {/* Price Range */}\n <div>\n <label className=\"mb-1.5 block text-xs font-medium text-muted-foreground\">\n {tr('housingvista.properties.filters.labels.priceRange', 'Price Range')}\n </label>\n <select\n value={selectedPriceRange}\n onChange={(e) => setSelectedPriceRange(e.target.value)}\n className=\"h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n {priceRanges.map((r) => (\n <option key={r.value} value={r.value}>\n {r.label}\n </option>\n ))}\n </select>\n </div>\n\n {/* Bedrooms */}\n <div>\n <label className=\"mb-1.5 block text-xs font-medium text-muted-foreground\">\n {tr('housingvista.properties.filters.labels.bedrooms', 'Bedrooms')}\n </label>\n <select\n value={selectedBedrooms}\n onChange={(e) => setSelectedBedrooms(e.target.value)}\n className=\"h-9 w-full rounded-md border border-border bg-background px-3 text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring\"\n >\n {bedroomOptions.map((b) => (\n <option key={b.value} value={b.value}>\n {b.label}\n </option>\n ))}\n </select>\n </div>\n </div>\n </div>\n )}\n\n {/* Results Count */}\n <div className=\"flex items-center justify-between\">\n <p className=\"text-sm text-muted-foreground\">\n {tr('housingvista.properties.results.showing', 'Showing')} {filteredProperties.length}{' '}\n {tr('housingvista.properties.results.of', 'of')} {properties.length}{' '}\n {tr('housingvista.properties.results.properties', 'properties')}\n </p>\n {hasActiveFilters && (\n <button onClick={clearFilters} className=\"text-sm text-muted-foreground hover:text-foreground\">\n {tr('housingvista.properties.results.clearFilters', 'Clear Filters')}\n </button>\n )}\n </div>\n\n {/* Property Grid / List */}\n {filteredProperties.length > 0 ? (\n <div className={cn(viewMode === 'grid' ? 'grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3' : 'space-y-4')}>\n {filteredProperties.map((property) => (\n <PropertyCard\n key={property.id}\n id={property.id}\n title={property.title}\n price={property.price.amount}\n priceType={property.price.type === 'rent' ? 'rent' : 'sale'}\n pricePeriod={property.price.period}\n location={`${property.location.neighborhood}, ${property.location.city}`}\n bedrooms={property.specifications.bedrooms}\n bathrooms={property.specifications.bathrooms}\n area={property.specifications.totalArea}\n imageUrl={property.images[0]?.url}\n status={property.status.replace('_', ' ')}\n type={property.category}\n onClick={() => navigate(property.id)}\n />\n ))}\n </div>\n ) : (\n <EmptyState\n icon={<Building className=\"h-12 w-12\" />}\n title={tr('housingvista.properties.empty.title', 'No properties found')}\n description={tr(\n 'housingvista.properties.empty.description',\n 'Try adjusting your search criteria or filters to find more properties.'\n )}\n action={\n <button\n onClick={clearFilters}\n className=\"rounded-md bg-foreground px-4 py-2 text-sm font-medium text-background transition-colors hover:bg-foreground/90\"\n >\n {tr('housingvista.properties.empty.clearAllFilters', 'Clear All Filters')}\n </button>\n }\n />\n )}\n </PageLayout>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * HousingVista Property Detail Page
3
+ * Full property detail view with image gallery, specs, amenities, documents, owner info.
4
+ * Migrated from legacy housingvista-frontend property-detail.tsx
5
+ * @module housingvista
6
+ */
7
+ export declare const PropertyDetailPage: () => import("react/jsx-runtime").JSX.Element;
8
+ //# sourceMappingURL=PropertyDetailPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PropertyDetailPage.d.ts","sourceRoot":"","sources":["../../../../src/housingvista/pages/properties/PropertyDetailPage.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqDH,eAAO,MAAM,kBAAkB,+CA4iB9B,CAAC"}