digikhata-mashreq-sdk 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (718) hide show
  1. package/lib/module/App.js +13 -26
  2. package/lib/module/App.js.map +1 -1
  3. package/lib/module/app/api/api.js +12 -0
  4. package/lib/module/app/api/api.js.map +1 -0
  5. package/lib/module/app/assets/Icons/Bill.png +0 -0
  6. package/lib/module/app/assets/Icons/Bill_Grey.png +0 -0
  7. package/lib/module/app/assets/Icons/Cash.png +0 -0
  8. package/lib/module/app/assets/Icons/Cash_Grey.png +0 -0
  9. package/lib/module/app/assets/Icons/Expense.png +0 -0
  10. package/lib/module/app/assets/Icons/Expense_Grey.png +0 -0
  11. package/lib/module/app/assets/Icons/Staff.png +0 -0
  12. package/lib/module/app/assets/Icons/Stock.png +0 -0
  13. package/lib/module/app/assets/Icons/Stock_Grey.png +0 -0
  14. package/lib/module/app/assets/Icons/abc.png +0 -0
  15. package/lib/module/app/assets/Icons/bank_logo.png +0 -0
  16. package/lib/module/app/assets/Icons/download_sale.png +0 -0
  17. package/lib/module/app/assets/Icons/recycle-bin.png +0 -0
  18. package/lib/module/app/assets/animations/recording.json +1 -0
  19. package/lib/module/app/assets/animations/success.json +1 -0
  20. package/lib/module/app/assets/animations/voice_visualization.json +1 -0
  21. package/lib/module/app/assets/businessCards/card_11.png +0 -0
  22. package/lib/module/app/assets/businessCards/card_12_bg.png +0 -0
  23. package/lib/module/app/assets/businessCards/card_wall_01.jpeg +0 -0
  24. package/lib/module/app/assets/businessCards/card_wall_02.jpeg +0 -0
  25. package/lib/module/app/assets/businessCards/card_wall_03.jpeg +0 -0
  26. package/lib/module/app/assets/businessCards/card_wall_04.jpeg +0 -0
  27. package/lib/module/app/assets/businessCards/card_wall_05.jpeg +0 -0
  28. package/lib/module/app/assets/businessCards/card_wall_06.jpeg +0 -0
  29. package/lib/module/app/assets/businessCards/card_wall_07.jpeg +0 -0
  30. package/lib/module/app/assets/businessCards/card_wall_08.jpeg +0 -0
  31. package/lib/module/app/assets/illustrations/empty.png +0 -0
  32. package/lib/module/app/assets/illustrations/packages.png +0 -0
  33. package/lib/module/app/assets/images/Digikhata_idzarHgH0q_0.png +0 -0
  34. package/lib/module/app/assets/images/bank.png +0 -0
  35. package/lib/module/app/assets/images/digiLogo-main.png +0 -0
  36. package/lib/module/app/assets/images/svgviewer-output.svg +57 -0
  37. package/lib/module/app/assets/images/user.png +0 -0
  38. package/lib/module/app/assets/oldIcons/BILL.svg +3 -0
  39. package/lib/module/app/assets/oldIcons/CASH.svg +4 -0
  40. package/lib/module/app/assets/oldIcons/EXPENSE.svg +6 -0
  41. package/lib/module/app/assets/oldIcons/STAFF.svg +3 -0
  42. package/lib/module/app/assets/oldIcons/Sale Active.svg +14 -0
  43. package/lib/module/app/assets/oldIcons/Stock.svg +5 -0
  44. package/lib/module/app/assets/svg/BILL.svg +4 -0
  45. package/lib/module/app/assets/svg/CASH.svg +6 -0
  46. package/lib/module/app/assets/svg/EXPENSE.svg +5 -0
  47. package/lib/module/app/assets/svg/More Icon.svg +6 -0
  48. package/lib/module/app/assets/svg/Payment Icon.svg +4 -0
  49. package/lib/module/app/assets/svg/Pos.svg +13 -0
  50. package/lib/module/app/assets/svg/STAFF.svg +5 -0
  51. package/lib/module/app/assets/svg/Sale Active.svg +8 -0
  52. package/lib/module/app/assets/svg/Sale Icon.svg +3 -0
  53. package/lib/module/app/assets/svg/Stock.svg +5 -0
  54. package/lib/module/app/components/AccountSetupSteps.js +64 -0
  55. package/lib/module/app/components/AccountSetupSteps.js.map +1 -0
  56. package/lib/module/app/components/AddItemBillParent.js +366 -0
  57. package/lib/module/app/components/AddItemBillParent.js.map +1 -0
  58. package/lib/module/app/components/AdditemBillChild.js +1123 -0
  59. package/lib/module/app/components/AdditemBillChild.js.map +1 -0
  60. package/lib/module/app/components/Balance.js +116 -70
  61. package/lib/module/app/components/Balance.js.map +1 -1
  62. package/lib/module/app/components/BillList.js +428 -0
  63. package/lib/module/app/components/BillList.js.map +1 -0
  64. package/lib/module/app/components/BillSetupSteps.js +64 -0
  65. package/lib/module/app/components/BillSetupSteps.js.map +1 -0
  66. package/lib/module/app/components/BottomView.js +35 -0
  67. package/lib/module/app/components/BottomView.js.map +1 -0
  68. package/lib/module/app/components/BusinessCards/Card1.js +202 -0
  69. package/lib/module/app/components/BusinessCards/Card1.js.map +1 -0
  70. package/lib/module/app/components/BusinessCards/Card10.js +234 -0
  71. package/lib/module/app/components/BusinessCards/Card10.js.map +1 -0
  72. package/lib/module/app/components/BusinessCards/Card2.js +190 -0
  73. package/lib/module/app/components/BusinessCards/Card2.js.map +1 -0
  74. package/lib/module/app/components/BusinessCards/Card3.js +186 -0
  75. package/lib/module/app/components/BusinessCards/Card3.js.map +1 -0
  76. package/lib/module/app/components/BusinessCards/Card4.js +186 -0
  77. package/lib/module/app/components/BusinessCards/Card4.js.map +1 -0
  78. package/lib/module/app/components/BusinessCards/Card5.js +189 -0
  79. package/lib/module/app/components/BusinessCards/Card5.js.map +1 -0
  80. package/lib/module/app/components/BusinessCards/Card6.js +198 -0
  81. package/lib/module/app/components/BusinessCards/Card6.js.map +1 -0
  82. package/lib/module/app/components/BusinessCards/Card7.js +185 -0
  83. package/lib/module/app/components/BusinessCards/Card7.js.map +1 -0
  84. package/lib/module/app/components/BusinessCards/Card8.js +187 -0
  85. package/lib/module/app/components/BusinessCards/Card8.js.map +1 -0
  86. package/lib/module/app/components/BusinessCards/Card9.js +234 -0
  87. package/lib/module/app/components/BusinessCards/Card9.js.map +1 -0
  88. package/lib/module/app/components/BusinessCards/index.js +13 -0
  89. package/lib/module/app/components/BusinessCards/index.js.map +1 -0
  90. package/lib/module/app/components/CashEntryComponent.js +256 -0
  91. package/lib/module/app/components/CashEntryComponent.js.map +1 -0
  92. package/lib/module/app/components/CityModal.js +116 -0
  93. package/lib/module/app/components/CityModal.js.map +1 -0
  94. package/lib/module/app/components/CountryPhoneInput.js +263 -166
  95. package/lib/module/app/components/CountryPhoneInput.js.map +1 -1
  96. package/lib/module/app/components/CreateExpenseAccount.js +139 -0
  97. package/lib/module/app/components/CreateExpenseAccount.js.map +1 -0
  98. package/lib/module/app/components/CustomStatusBar.js +29 -0
  99. package/lib/module/app/components/CustomStatusBar.js.map +1 -0
  100. package/lib/module/app/components/CustomToast.js +135 -0
  101. package/lib/module/app/components/CustomToast.js.map +1 -0
  102. package/lib/module/app/components/DeleteBusinessModal.js +174 -0
  103. package/lib/module/app/components/DeleteBusinessModal.js.map +1 -0
  104. package/lib/module/app/components/DiscountTaxModal.js +242 -0
  105. package/lib/module/app/components/DiscountTaxModal.js.map +1 -0
  106. package/lib/module/app/components/Entries.js +54 -32
  107. package/lib/module/app/components/Entries.js.map +1 -1
  108. package/lib/module/app/components/ExpenseList.js +402 -0
  109. package/lib/module/app/components/ExpenseList.js.map +1 -0
  110. package/lib/module/app/components/ExpenseParent.js +441 -0
  111. package/lib/module/app/components/ExpenseParent.js.map +1 -0
  112. package/lib/module/app/components/FloatingInput.js +159 -0
  113. package/lib/module/app/components/FloatingInput.js.map +1 -0
  114. package/lib/module/app/components/Header.js +107 -0
  115. package/lib/module/app/components/Header.js.map +1 -0
  116. package/lib/module/app/components/Loader.js +45 -0
  117. package/lib/module/app/components/Loader.js.map +1 -0
  118. package/lib/module/app/components/PartyModal.js +230 -0
  119. package/lib/module/app/components/PartyModal.js.map +1 -0
  120. package/lib/module/app/components/PickerModal.js +153 -0
  121. package/lib/module/app/components/PickerModal.js.map +1 -0
  122. package/lib/module/app/components/SalePaymentModal.js +743 -0
  123. package/lib/module/app/components/SalePaymentModal.js.map +1 -0
  124. package/lib/module/app/components/SearchBar.js +179 -42
  125. package/lib/module/app/components/SearchBar.js.map +1 -1
  126. package/lib/module/app/components/StockDetailChild.js +425 -0
  127. package/lib/module/app/components/StockDetailChild.js.map +1 -0
  128. package/lib/module/app/components/StockList.js +448 -0
  129. package/lib/module/app/components/StockList.js.map +1 -0
  130. package/lib/module/app/components/StockReportTransaction.js +182 -0
  131. package/lib/module/app/components/StockReportTransaction.js.map +1 -0
  132. package/lib/module/app/components/Transaction.js +193 -53
  133. package/lib/module/app/components/Transaction.js.map +1 -1
  134. package/lib/module/app/components/User.js +106 -51
  135. package/lib/module/app/components/User.js.map +1 -1
  136. package/lib/module/app/components/index.js +20 -1
  137. package/lib/module/app/components/index.js.map +1 -1
  138. package/lib/module/app/database/bill.js +247 -0
  139. package/lib/module/app/database/bill.js.map +1 -0
  140. package/lib/module/app/database/business.js +262 -0
  141. package/lib/module/app/database/business.js.map +1 -0
  142. package/lib/module/app/database/cash.js +299 -0
  143. package/lib/module/app/database/cash.js.map +1 -0
  144. package/lib/module/app/database/clients.js +1182 -36
  145. package/lib/module/app/database/clients.js.map +1 -1
  146. package/lib/module/app/database/expense.js +299 -0
  147. package/lib/module/app/database/expense.js.map +1 -0
  148. package/lib/module/app/database/schema.js +113 -3
  149. package/lib/module/app/database/schema.js.map +1 -1
  150. package/lib/module/app/database/stock.js +509 -0
  151. package/lib/module/app/database/stock.js.map +1 -0
  152. package/lib/module/app/htmlTemplates/htmlTemplates.js +2504 -0
  153. package/lib/module/app/htmlTemplates/htmlTemplates.js.map +1 -0
  154. package/lib/module/app/navigation/BillStack/BillStack.js +40 -0
  155. package/lib/module/app/navigation/BillStack/BillStack.js.map +1 -0
  156. package/lib/module/app/navigation/BottomTabs/BottomTabs.js +10 -5
  157. package/lib/module/app/navigation/BottomTabs/BottomTabs.js.map +1 -1
  158. package/lib/module/app/navigation/BusinessStack/BusinessStack.js +30 -0
  159. package/lib/module/app/navigation/BusinessStack/BusinessStack.js.map +1 -0
  160. package/lib/module/app/navigation/CashStack/CashStack.js +79 -0
  161. package/lib/module/app/navigation/CashStack/CashStack.js.map +1 -0
  162. package/lib/module/app/navigation/EntriesStack/EntriesStack.js +223 -0
  163. package/lib/module/app/navigation/EntriesStack/EntriesStack.js.map +1 -0
  164. package/lib/module/app/navigation/ExpenseStack.js/ExpenseStack.js +37 -0
  165. package/lib/module/app/navigation/ExpenseStack.js/ExpenseStack.js.map +1 -0
  166. package/lib/module/app/navigation/HomeStack/HomeStack.js +93 -1
  167. package/lib/module/app/navigation/HomeStack/HomeStack.js.map +1 -1
  168. package/lib/module/app/navigation/Root.js +10 -1
  169. package/lib/module/app/navigation/Root.js.map +1 -1
  170. package/lib/module/app/navigation/SaleStack/SaleStack.js +73 -0
  171. package/lib/module/app/navigation/SaleStack/SaleStack.js.map +1 -0
  172. package/lib/module/app/navigation/StockStack/StockStack.js +49 -0
  173. package/lib/module/app/navigation/StockStack/StockStack.js.map +1 -0
  174. package/lib/module/app/navigation/index.js +3 -1
  175. package/lib/module/app/navigation/index.js.map +1 -1
  176. package/lib/module/app/redux/Store.js +3 -1
  177. package/lib/module/app/redux/Store.js.map +1 -1
  178. package/lib/module/app/redux/reducers/client/client_reducers.js +23 -2
  179. package/lib/module/app/redux/reducers/client/client_reducers.js.map +1 -1
  180. package/lib/module/app/redux/reducers/client/client_types.js +5 -0
  181. package/lib/module/app/redux/reducers/client/client_types.js.map +1 -1
  182. package/lib/module/app/redux/reducers/user/user_reducers.js +22 -0
  183. package/lib/module/app/redux/reducers/user/user_reducers.js.map +1 -0
  184. package/lib/module/app/redux/reducers/user/user_types.js +6 -0
  185. package/lib/module/app/redux/reducers/user/user_types.js.map +1 -0
  186. package/lib/module/app/screens/AddBank.js +237 -0
  187. package/lib/module/app/screens/AddBank.js.map +1 -0
  188. package/lib/module/app/screens/AddBusiness.js +905 -0
  189. package/lib/module/app/screens/AddBusiness.js.map +1 -0
  190. package/lib/module/app/screens/AddItems.js +433 -0
  191. package/lib/module/app/screens/AddItems.js.map +1 -0
  192. package/lib/module/app/screens/AddScreen.js +341 -77
  193. package/lib/module/app/screens/AddScreen.js.map +1 -1
  194. package/lib/module/app/screens/All.js +836 -0
  195. package/lib/module/app/screens/All.js.map +1 -0
  196. package/lib/module/app/screens/AllTransactions.js +846 -0
  197. package/lib/module/app/screens/AllTransactions.js.map +1 -0
  198. package/lib/module/app/screens/Banks.js +807 -48
  199. package/lib/module/app/screens/Banks.js.map +1 -1
  200. package/lib/module/app/screens/BillDetails.js +1033 -0
  201. package/lib/module/app/screens/BillDetails.js.map +1 -0
  202. package/lib/module/app/screens/BillHome.js +102 -0
  203. package/lib/module/app/screens/BillHome.js.map +1 -0
  204. package/lib/module/app/screens/BillParent.js +373 -0
  205. package/lib/module/app/screens/BillParent.js.map +1 -0
  206. package/lib/module/app/screens/BusinessDetail.js +787 -0
  207. package/lib/module/app/screens/BusinessDetail.js.map +1 -0
  208. package/lib/module/app/screens/CashEntry.js +2429 -0
  209. package/lib/module/app/screens/CashEntry.js.map +1 -0
  210. package/lib/module/app/screens/CashEntryDetails.js +574 -0
  211. package/lib/module/app/screens/CashEntryDetails.js.map +1 -0
  212. package/lib/module/app/screens/CashHome.js +544 -0
  213. package/lib/module/app/screens/CashHome.js.map +1 -0
  214. package/lib/module/app/screens/CashReport.js +1297 -0
  215. package/lib/module/app/screens/CashReport.js.map +1 -0
  216. package/lib/module/app/screens/CashSummary.js +602 -0
  217. package/lib/module/app/screens/CashSummary.js.map +1 -0
  218. package/lib/module/app/screens/CreateBill.js +2137 -0
  219. package/lib/module/app/screens/CreateBill.js.map +1 -0
  220. package/lib/module/app/screens/CustomerEntries.js +1093 -184
  221. package/lib/module/app/screens/CustomerEntries.js.map +1 -1
  222. package/lib/module/app/screens/Customers.js +727 -96
  223. package/lib/module/app/screens/Customers.js.map +1 -1
  224. package/lib/module/app/screens/EditCategory.js +299 -0
  225. package/lib/module/app/screens/EditCategory.js.map +1 -0
  226. package/lib/module/app/screens/EditCategoryStock.js +302 -0
  227. package/lib/module/app/screens/EditCategoryStock.js.map +1 -0
  228. package/lib/module/app/screens/Entry.js +1838 -275
  229. package/lib/module/app/screens/Entry.js.map +1 -1
  230. package/lib/module/app/screens/ExpenseDetail.js +15 -0
  231. package/lib/module/app/screens/ExpenseDetail.js.map +1 -0
  232. package/lib/module/app/screens/ExpenseEntries.js +713 -0
  233. package/lib/module/app/screens/ExpenseEntries.js.map +1 -0
  234. package/lib/module/app/screens/ExpenseEntry.js +2095 -0
  235. package/lib/module/app/screens/ExpenseEntry.js.map +1 -0
  236. package/lib/module/app/screens/ExpenseEntryDetails.js +508 -0
  237. package/lib/module/app/screens/ExpenseEntryDetails.js.map +1 -0
  238. package/lib/module/app/screens/ExpenseEntryReport.js +792 -0
  239. package/lib/module/app/screens/ExpenseEntryReport.js.map +1 -0
  240. package/lib/module/app/screens/ExpenseReport.js +792 -0
  241. package/lib/module/app/screens/ExpenseReport.js.map +1 -0
  242. package/lib/module/app/screens/Geolocation.js +374 -0
  243. package/lib/module/app/screens/Geolocation.js.map +1 -0
  244. package/lib/module/app/screens/GetStarted.js +213 -0
  245. package/lib/module/app/screens/GetStarted.js.map +1 -0
  246. package/lib/module/app/screens/HomeScreen.js +202 -55
  247. package/lib/module/app/screens/HomeScreen.js.map +1 -1
  248. package/lib/module/app/screens/InBuy.js +854 -0
  249. package/lib/module/app/screens/InBuy.js.map +1 -0
  250. package/lib/module/app/screens/ItemEntryDetails.js +652 -0
  251. package/lib/module/app/screens/ItemEntryDetails.js.map +1 -0
  252. package/lib/module/app/screens/LowStock.js +372 -0
  253. package/lib/module/app/screens/LowStock.js.map +1 -0
  254. package/lib/module/app/screens/NewPin.js +234 -0
  255. package/lib/module/app/screens/NewPin.js.map +1 -0
  256. package/lib/module/app/screens/OutSell.js +1883 -0
  257. package/lib/module/app/screens/OutSell.js.map +1 -0
  258. package/lib/module/app/screens/POSSale.js +637 -0
  259. package/lib/module/app/screens/POSSale.js.map +1 -0
  260. package/lib/module/app/screens/PinScreen.js +663 -0
  261. package/lib/module/app/screens/PinScreen.js.map +1 -0
  262. package/lib/module/app/screens/PreviewBill.js +329 -0
  263. package/lib/module/app/screens/PreviewBill.js.map +1 -0
  264. package/lib/module/app/screens/Profile.js +1160 -0
  265. package/lib/module/app/screens/Profile.js.map +1 -0
  266. package/lib/module/app/screens/RateList.js +432 -0
  267. package/lib/module/app/screens/RateList.js.map +1 -0
  268. package/lib/module/app/screens/Report.js +1105 -0
  269. package/lib/module/app/screens/Report.js.map +1 -0
  270. package/lib/module/app/screens/SaleItemDetail.js +1047 -0
  271. package/lib/module/app/screens/SaleItemDetail.js.map +1 -0
  272. package/lib/module/app/screens/SaleParent.js +289 -0
  273. package/lib/module/app/screens/SaleParent.js.map +1 -0
  274. package/lib/module/app/screens/SelectBank.js +220 -0
  275. package/lib/module/app/screens/SelectBank.js.map +1 -0
  276. package/lib/module/app/screens/SelectBusiness.js +497 -93
  277. package/lib/module/app/screens/SelectBusiness.js.map +1 -1
  278. package/lib/module/app/screens/Splash.js +93 -20
  279. package/lib/module/app/screens/Splash.js.map +1 -1
  280. package/lib/module/app/screens/StockChild.js +362 -0
  281. package/lib/module/app/screens/StockChild.js.map +1 -0
  282. package/lib/module/app/screens/StockDetail.js +705 -0
  283. package/lib/module/app/screens/StockDetail.js.map +1 -0
  284. package/lib/module/app/screens/StockParent.js +260 -0
  285. package/lib/module/app/screens/StockParent.js.map +1 -0
  286. package/lib/module/app/screens/StockReport.js +1031 -0
  287. package/lib/module/app/screens/StockReport.js.map +1 -0
  288. package/lib/module/app/screens/StockValue.js +545 -0
  289. package/lib/module/app/screens/StockValue.js.map +1 -0
  290. package/lib/module/app/screens/Suppliers.js +753 -98
  291. package/lib/module/app/screens/Suppliers.js.map +1 -1
  292. package/lib/module/app/screens/TransactionDetails.js +1169 -81
  293. package/lib/module/app/screens/TransactionDetails.js.map +1 -1
  294. package/lib/module/app/screens/UpdateBusiness.js +707 -0
  295. package/lib/module/app/screens/UpdateBusiness.js.map +1 -0
  296. package/lib/module/app/screens/VisionCamera.js +60 -0
  297. package/lib/module/app/screens/VisionCamera.js.map +1 -0
  298. package/lib/module/app/screens/index.js +46 -1
  299. package/lib/module/app/screens/index.js.map +1 -1
  300. package/lib/module/app/screens/new.html +171 -0
  301. package/lib/module/app/themes/config.js +299 -30
  302. package/lib/module/app/themes/config.js.map +1 -1
  303. package/lib/module/app/utils/city.json +7265 -0
  304. package/lib/typescript/eslint.config.d.mts +1 -1
  305. package/lib/typescript/src/App.d.ts.map +1 -1
  306. package/lib/typescript/src/app/api/api.d.ts +10 -0
  307. package/lib/typescript/src/app/api/api.d.ts.map +1 -0
  308. package/lib/typescript/src/app/components/AccountSetupSteps.d.ts +3 -0
  309. package/lib/typescript/src/app/components/AccountSetupSteps.d.ts.map +1 -0
  310. package/lib/typescript/src/app/components/AddItemBillParent.d.ts +5 -0
  311. package/lib/typescript/src/app/components/AddItemBillParent.d.ts.map +1 -0
  312. package/lib/typescript/src/app/components/AdditemBillChild.d.ts +6 -0
  313. package/lib/typescript/src/app/components/AdditemBillChild.d.ts.map +1 -0
  314. package/lib/typescript/src/app/components/Balance.d.ts +3 -1
  315. package/lib/typescript/src/app/components/Balance.d.ts.map +1 -1
  316. package/lib/typescript/src/app/components/BillList.d.ts +5 -0
  317. package/lib/typescript/src/app/components/BillList.d.ts.map +1 -0
  318. package/lib/typescript/src/app/components/BillSetupSteps.d.ts +3 -0
  319. package/lib/typescript/src/app/components/BillSetupSteps.d.ts.map +1 -0
  320. package/lib/typescript/src/app/components/BottomView.d.ts +6 -0
  321. package/lib/typescript/src/app/components/BottomView.d.ts.map +1 -0
  322. package/lib/typescript/src/app/components/BusinessCards/Card1.d.ts +14 -0
  323. package/lib/typescript/src/app/components/BusinessCards/Card1.d.ts.map +1 -0
  324. package/lib/typescript/src/app/components/BusinessCards/Card10.d.ts +14 -0
  325. package/lib/typescript/src/app/components/BusinessCards/Card10.d.ts.map +1 -0
  326. package/lib/typescript/src/app/components/BusinessCards/Card2.d.ts +14 -0
  327. package/lib/typescript/src/app/components/BusinessCards/Card2.d.ts.map +1 -0
  328. package/lib/typescript/src/app/components/BusinessCards/Card3.d.ts +14 -0
  329. package/lib/typescript/src/app/components/BusinessCards/Card3.d.ts.map +1 -0
  330. package/lib/typescript/src/app/components/BusinessCards/Card4.d.ts +14 -0
  331. package/lib/typescript/src/app/components/BusinessCards/Card4.d.ts.map +1 -0
  332. package/lib/typescript/src/app/components/BusinessCards/Card5.d.ts +14 -0
  333. package/lib/typescript/src/app/components/BusinessCards/Card5.d.ts.map +1 -0
  334. package/lib/typescript/src/app/components/BusinessCards/Card6.d.ts +14 -0
  335. package/lib/typescript/src/app/components/BusinessCards/Card6.d.ts.map +1 -0
  336. package/lib/typescript/src/app/components/BusinessCards/Card7.d.ts +14 -0
  337. package/lib/typescript/src/app/components/BusinessCards/Card7.d.ts.map +1 -0
  338. package/lib/typescript/src/app/components/BusinessCards/Card8.d.ts +14 -0
  339. package/lib/typescript/src/app/components/BusinessCards/Card8.d.ts.map +1 -0
  340. package/lib/typescript/src/app/components/BusinessCards/Card9.d.ts +14 -0
  341. package/lib/typescript/src/app/components/BusinessCards/Card9.d.ts.map +1 -0
  342. package/lib/typescript/src/app/components/BusinessCards/index.d.ts +11 -0
  343. package/lib/typescript/src/app/components/BusinessCards/index.d.ts.map +1 -0
  344. package/lib/typescript/src/app/components/CashEntryComponent.d.ts +8 -0
  345. package/lib/typescript/src/app/components/CashEntryComponent.d.ts.map +1 -0
  346. package/lib/typescript/src/app/components/CityModal.d.ts +7 -0
  347. package/lib/typescript/src/app/components/CityModal.d.ts.map +1 -0
  348. package/lib/typescript/src/app/components/CountryPhoneInput.d.ts +4 -1
  349. package/lib/typescript/src/app/components/CountryPhoneInput.d.ts.map +1 -1
  350. package/lib/typescript/src/app/components/CreateExpenseAccount.d.ts +9 -0
  351. package/lib/typescript/src/app/components/CreateExpenseAccount.d.ts.map +1 -0
  352. package/lib/typescript/src/app/components/CustomStatusBar.d.ts +3 -0
  353. package/lib/typescript/src/app/components/CustomStatusBar.d.ts.map +1 -0
  354. package/lib/typescript/src/app/components/CustomToast.d.ts +10 -0
  355. package/lib/typescript/src/app/components/CustomToast.d.ts.map +1 -0
  356. package/lib/typescript/src/app/components/DeleteBusinessModal.d.ts +8 -0
  357. package/lib/typescript/src/app/components/DeleteBusinessModal.d.ts.map +1 -0
  358. package/lib/typescript/src/app/components/DiscountTaxModal.d.ts +9 -0
  359. package/lib/typescript/src/app/components/DiscountTaxModal.d.ts.map +1 -0
  360. package/lib/typescript/src/app/components/Entries.d.ts.map +1 -1
  361. package/lib/typescript/src/app/components/ExpenseList.d.ts +6 -0
  362. package/lib/typescript/src/app/components/ExpenseList.d.ts.map +1 -0
  363. package/lib/typescript/src/app/components/ExpenseParent.d.ts +4 -0
  364. package/lib/typescript/src/app/components/ExpenseParent.d.ts.map +1 -0
  365. package/lib/typescript/src/app/components/FloatingInput.d.ts +18 -0
  366. package/lib/typescript/src/app/components/FloatingInput.d.ts.map +1 -0
  367. package/lib/typescript/src/app/components/Header.d.ts +11 -0
  368. package/lib/typescript/src/app/components/Header.d.ts.map +1 -0
  369. package/lib/typescript/src/app/components/Loader.d.ts +5 -0
  370. package/lib/typescript/src/app/components/Loader.d.ts.map +1 -0
  371. package/lib/typescript/src/app/components/PartyModal.d.ts +7 -0
  372. package/lib/typescript/src/app/components/PartyModal.d.ts.map +1 -0
  373. package/lib/typescript/src/app/components/PickerModal.d.ts +8 -0
  374. package/lib/typescript/src/app/components/PickerModal.d.ts.map +1 -0
  375. package/lib/typescript/src/app/components/SalePaymentModal.d.ts +15 -0
  376. package/lib/typescript/src/app/components/SalePaymentModal.d.ts.map +1 -0
  377. package/lib/typescript/src/app/components/SearchBar.d.ts +2 -4
  378. package/lib/typescript/src/app/components/SearchBar.d.ts.map +1 -1
  379. package/lib/typescript/src/app/components/StockDetailChild.d.ts +5 -0
  380. package/lib/typescript/src/app/components/StockDetailChild.d.ts.map +1 -0
  381. package/lib/typescript/src/app/components/StockList.d.ts +6 -0
  382. package/lib/typescript/src/app/components/StockList.d.ts.map +1 -0
  383. package/lib/typescript/src/app/components/StockReportTransaction.d.ts +18 -0
  384. package/lib/typescript/src/app/components/StockReportTransaction.d.ts.map +1 -0
  385. package/lib/typescript/src/app/components/Transaction.d.ts +9 -2
  386. package/lib/typescript/src/app/components/Transaction.d.ts.map +1 -1
  387. package/lib/typescript/src/app/components/User.d.ts +3 -1
  388. package/lib/typescript/src/app/components/User.d.ts.map +1 -1
  389. package/lib/typescript/src/app/components/index.d.ts +26 -7
  390. package/lib/typescript/src/app/components/index.d.ts.map +1 -1
  391. package/lib/typescript/src/app/database/bill.d.ts +7 -0
  392. package/lib/typescript/src/app/database/bill.d.ts.map +1 -0
  393. package/lib/typescript/src/app/database/business.d.ts +9 -0
  394. package/lib/typescript/src/app/database/business.d.ts.map +1 -0
  395. package/lib/typescript/src/app/database/cash.d.ts +14 -0
  396. package/lib/typescript/src/app/database/cash.d.ts.map +1 -0
  397. package/lib/typescript/src/app/database/clients.d.ts +36 -5
  398. package/lib/typescript/src/app/database/clients.d.ts.map +1 -1
  399. package/lib/typescript/src/app/database/expense.d.ts +12 -0
  400. package/lib/typescript/src/app/database/expense.d.ts.map +1 -0
  401. package/lib/typescript/src/app/database/schema.d.ts.map +1 -1
  402. package/lib/typescript/src/app/database/stock.d.ts +16 -0
  403. package/lib/typescript/src/app/database/stock.d.ts.map +1 -0
  404. package/lib/typescript/src/app/htmlTemplates/htmlTemplates.d.ts +29 -0
  405. package/lib/typescript/src/app/htmlTemplates/htmlTemplates.d.ts.map +1 -0
  406. package/lib/typescript/src/app/navigation/BillStack/BillStack.d.ts +2 -0
  407. package/lib/typescript/src/app/navigation/BillStack/BillStack.d.ts.map +1 -0
  408. package/lib/typescript/src/app/navigation/BottomTabs/BottomTabs.d.ts.map +1 -1
  409. package/lib/typescript/src/app/navigation/BusinessStack/BusinessStack.d.ts +2 -0
  410. package/lib/typescript/src/app/navigation/BusinessStack/BusinessStack.d.ts.map +1 -0
  411. package/lib/typescript/src/app/navigation/CashStack/CashStack.d.ts +2 -0
  412. package/lib/typescript/src/app/navigation/CashStack/CashStack.d.ts.map +1 -0
  413. package/lib/typescript/src/app/navigation/EntriesStack/EntriesStack.d.ts +2 -0
  414. package/lib/typescript/src/app/navigation/EntriesStack/EntriesStack.d.ts.map +1 -0
  415. package/lib/typescript/src/app/navigation/ExpenseStack.js/ExpenseStack.d.ts +2 -0
  416. package/lib/typescript/src/app/navigation/ExpenseStack.js/ExpenseStack.d.ts.map +1 -0
  417. package/lib/typescript/src/app/navigation/HomeStack/HomeStack.d.ts.map +1 -1
  418. package/lib/typescript/src/app/navigation/Root.d.ts.map +1 -1
  419. package/lib/typescript/src/app/navigation/SaleStack/SaleStack.d.ts +2 -0
  420. package/lib/typescript/src/app/navigation/SaleStack/SaleStack.d.ts.map +1 -0
  421. package/lib/typescript/src/app/navigation/StockStack/StockStack.d.ts +2 -0
  422. package/lib/typescript/src/app/navigation/StockStack/StockStack.d.ts.map +1 -0
  423. package/lib/typescript/src/app/navigation/index.d.ts +3 -1
  424. package/lib/typescript/src/app/navigation/index.d.ts.map +1 -1
  425. package/lib/typescript/src/app/redux/Store.d.ts.map +1 -1
  426. package/lib/typescript/src/app/redux/reducers/client/client_reducers.d.ts.map +1 -1
  427. package/lib/typescript/src/app/redux/reducers/client/client_types.d.ts +5 -0
  428. package/lib/typescript/src/app/redux/reducers/client/client_types.d.ts.map +1 -1
  429. package/lib/typescript/src/app/redux/reducers/user/user_reducers.d.ts +3 -0
  430. package/lib/typescript/src/app/redux/reducers/user/user_reducers.d.ts.map +1 -0
  431. package/lib/typescript/src/app/redux/reducers/user/user_types.d.ts +4 -0
  432. package/lib/typescript/src/app/redux/reducers/user/user_types.d.ts.map +1 -0
  433. package/lib/typescript/src/app/screens/AddBank.d.ts +5 -0
  434. package/lib/typescript/src/app/screens/AddBank.d.ts.map +1 -0
  435. package/lib/typescript/src/app/screens/AddBusiness.d.ts +4 -0
  436. package/lib/typescript/src/app/screens/AddBusiness.d.ts.map +1 -0
  437. package/lib/typescript/src/app/screens/AddItems.d.ts +5 -0
  438. package/lib/typescript/src/app/screens/AddItems.d.ts.map +1 -0
  439. package/lib/typescript/src/app/screens/AddScreen.d.ts.map +1 -1
  440. package/lib/typescript/src/app/screens/All.d.ts +2 -0
  441. package/lib/typescript/src/app/screens/All.d.ts.map +1 -0
  442. package/lib/typescript/src/app/screens/AllTransactions.d.ts +5 -0
  443. package/lib/typescript/src/app/screens/AllTransactions.d.ts.map +1 -0
  444. package/lib/typescript/src/app/screens/Banks.d.ts.map +1 -1
  445. package/lib/typescript/src/app/screens/BillDetails.d.ts +6 -0
  446. package/lib/typescript/src/app/screens/BillDetails.d.ts.map +1 -0
  447. package/lib/typescript/src/app/screens/BillHome.d.ts +5 -0
  448. package/lib/typescript/src/app/screens/BillHome.d.ts.map +1 -0
  449. package/lib/typescript/src/app/screens/BillParent.d.ts +5 -0
  450. package/lib/typescript/src/app/screens/BillParent.d.ts.map +1 -0
  451. package/lib/typescript/src/app/screens/BusinessDetail.d.ts +4 -0
  452. package/lib/typescript/src/app/screens/BusinessDetail.d.ts.map +1 -0
  453. package/lib/typescript/src/app/screens/CashEntry.d.ts +5 -0
  454. package/lib/typescript/src/app/screens/CashEntry.d.ts.map +1 -0
  455. package/lib/typescript/src/app/screens/CashEntryDetails.d.ts +5 -0
  456. package/lib/typescript/src/app/screens/CashEntryDetails.d.ts.map +1 -0
  457. package/lib/typescript/src/app/screens/CashHome.d.ts +4 -0
  458. package/lib/typescript/src/app/screens/CashHome.d.ts.map +1 -0
  459. package/lib/typescript/src/app/screens/CashReport.d.ts +4 -0
  460. package/lib/typescript/src/app/screens/CashReport.d.ts.map +1 -0
  461. package/lib/typescript/src/app/screens/CashSummary.d.ts +5 -0
  462. package/lib/typescript/src/app/screens/CashSummary.d.ts.map +1 -0
  463. package/lib/typescript/src/app/screens/CreateBill.d.ts +5 -0
  464. package/lib/typescript/src/app/screens/CreateBill.d.ts.map +1 -0
  465. package/lib/typescript/src/app/screens/CustomerEntries.d.ts.map +1 -1
  466. package/lib/typescript/src/app/screens/Customers.d.ts +1 -3
  467. package/lib/typescript/src/app/screens/Customers.d.ts.map +1 -1
  468. package/lib/typescript/src/app/screens/EditCategory.d.ts +4 -0
  469. package/lib/typescript/src/app/screens/EditCategory.d.ts.map +1 -0
  470. package/lib/typescript/src/app/screens/EditCategoryStock.d.ts +4 -0
  471. package/lib/typescript/src/app/screens/EditCategoryStock.d.ts.map +1 -0
  472. package/lib/typescript/src/app/screens/Entry.d.ts.map +1 -1
  473. package/lib/typescript/src/app/screens/ExpenseDetail.d.ts +3 -0
  474. package/lib/typescript/src/app/screens/ExpenseDetail.d.ts.map +1 -0
  475. package/lib/typescript/src/app/screens/ExpenseEntries.d.ts +5 -0
  476. package/lib/typescript/src/app/screens/ExpenseEntries.d.ts.map +1 -0
  477. package/lib/typescript/src/app/screens/ExpenseEntry.d.ts +5 -0
  478. package/lib/typescript/src/app/screens/ExpenseEntry.d.ts.map +1 -0
  479. package/lib/typescript/src/app/screens/ExpenseEntryDetails.d.ts +5 -0
  480. package/lib/typescript/src/app/screens/ExpenseEntryDetails.d.ts.map +1 -0
  481. package/lib/typescript/src/app/screens/ExpenseEntryReport.d.ts +5 -0
  482. package/lib/typescript/src/app/screens/ExpenseEntryReport.d.ts.map +1 -0
  483. package/lib/typescript/src/app/screens/ExpenseReport.d.ts +5 -0
  484. package/lib/typescript/src/app/screens/ExpenseReport.d.ts.map +1 -0
  485. package/lib/typescript/src/app/screens/Geolocation.d.ts +5 -0
  486. package/lib/typescript/src/app/screens/Geolocation.d.ts.map +1 -0
  487. package/lib/typescript/src/app/screens/GetStarted.d.ts +4 -0
  488. package/lib/typescript/src/app/screens/GetStarted.d.ts.map +1 -0
  489. package/lib/typescript/src/app/screens/HomeScreen.d.ts.map +1 -1
  490. package/lib/typescript/src/app/screens/InBuy.d.ts +5 -0
  491. package/lib/typescript/src/app/screens/InBuy.d.ts.map +1 -0
  492. package/lib/typescript/src/app/screens/ItemEntryDetails.d.ts +5 -0
  493. package/lib/typescript/src/app/screens/ItemEntryDetails.d.ts.map +1 -0
  494. package/lib/typescript/src/app/screens/LowStock.d.ts +4 -0
  495. package/lib/typescript/src/app/screens/LowStock.d.ts.map +1 -0
  496. package/lib/typescript/src/app/screens/NewPin.d.ts +5 -0
  497. package/lib/typescript/src/app/screens/NewPin.d.ts.map +1 -0
  498. package/lib/typescript/src/app/screens/OutSell.d.ts +6 -0
  499. package/lib/typescript/src/app/screens/OutSell.d.ts.map +1 -0
  500. package/lib/typescript/src/app/screens/POSSale.d.ts +9 -0
  501. package/lib/typescript/src/app/screens/POSSale.d.ts.map +1 -0
  502. package/lib/typescript/src/app/screens/PinScreen.d.ts +5 -0
  503. package/lib/typescript/src/app/screens/PinScreen.d.ts.map +1 -0
  504. package/lib/typescript/src/app/screens/PreviewBill.d.ts +5 -0
  505. package/lib/typescript/src/app/screens/PreviewBill.d.ts.map +1 -0
  506. package/lib/typescript/src/app/screens/Profile.d.ts +5 -0
  507. package/lib/typescript/src/app/screens/Profile.d.ts.map +1 -0
  508. package/lib/typescript/src/app/screens/RateList.d.ts +5 -0
  509. package/lib/typescript/src/app/screens/RateList.d.ts.map +1 -0
  510. package/lib/typescript/src/app/screens/Report.d.ts +5 -0
  511. package/lib/typescript/src/app/screens/Report.d.ts.map +1 -0
  512. package/lib/typescript/src/app/screens/SaleItemDetail.d.ts +6 -0
  513. package/lib/typescript/src/app/screens/SaleItemDetail.d.ts.map +1 -0
  514. package/lib/typescript/src/app/screens/SaleParent.d.ts +2 -0
  515. package/lib/typescript/src/app/screens/SaleParent.d.ts.map +1 -0
  516. package/lib/typescript/src/app/screens/SelectBank.d.ts +4 -0
  517. package/lib/typescript/src/app/screens/SelectBank.d.ts.map +1 -0
  518. package/lib/typescript/src/app/screens/SelectBusiness.d.ts.map +1 -1
  519. package/lib/typescript/src/app/screens/Splash.d.ts.map +1 -1
  520. package/lib/typescript/src/app/screens/StockChild.d.ts +7 -0
  521. package/lib/typescript/src/app/screens/StockChild.d.ts.map +1 -0
  522. package/lib/typescript/src/app/screens/StockDetail.d.ts +5 -0
  523. package/lib/typescript/src/app/screens/StockDetail.d.ts.map +1 -0
  524. package/lib/typescript/src/app/screens/StockParent.d.ts +2 -0
  525. package/lib/typescript/src/app/screens/StockParent.d.ts.map +1 -0
  526. package/lib/typescript/src/app/screens/StockReport.d.ts +5 -0
  527. package/lib/typescript/src/app/screens/StockReport.d.ts.map +1 -0
  528. package/lib/typescript/src/app/screens/StockValue.d.ts +5 -0
  529. package/lib/typescript/src/app/screens/StockValue.d.ts.map +1 -0
  530. package/lib/typescript/src/app/screens/Suppliers.d.ts +1 -3
  531. package/lib/typescript/src/app/screens/Suppliers.d.ts.map +1 -1
  532. package/lib/typescript/src/app/screens/TransactionDetails.d.ts.map +1 -1
  533. package/lib/typescript/src/app/screens/UpdateBusiness.d.ts +5 -0
  534. package/lib/typescript/src/app/screens/UpdateBusiness.d.ts.map +1 -0
  535. package/lib/typescript/src/app/screens/VisionCamera.d.ts +2 -0
  536. package/lib/typescript/src/app/screens/VisionCamera.d.ts.map +1 -0
  537. package/lib/typescript/src/app/screens/index.d.ts +56 -11
  538. package/lib/typescript/src/app/screens/index.d.ts.map +1 -1
  539. package/lib/typescript/src/app/themes/config.d.ts +60 -8
  540. package/lib/typescript/src/app/themes/config.d.ts.map +1 -1
  541. package/package.json +6 -2
  542. package/src/App.js +30 -34
  543. package/src/app/api/api.js +11 -0
  544. package/src/app/assets/Icons/Bill.png +0 -0
  545. package/src/app/assets/Icons/Bill_Grey.png +0 -0
  546. package/src/app/assets/Icons/Cash.png +0 -0
  547. package/src/app/assets/Icons/Cash_Grey.png +0 -0
  548. package/src/app/assets/Icons/Expense.png +0 -0
  549. package/src/app/assets/Icons/Expense_Grey.png +0 -0
  550. package/src/app/assets/Icons/Staff.png +0 -0
  551. package/src/app/assets/Icons/Stock.png +0 -0
  552. package/src/app/assets/Icons/Stock_Grey.png +0 -0
  553. package/src/app/assets/Icons/abc.png +0 -0
  554. package/src/app/assets/Icons/bank_logo.png +0 -0
  555. package/src/app/assets/Icons/download_sale.png +0 -0
  556. package/src/app/assets/Icons/recycle-bin.png +0 -0
  557. package/src/app/assets/animations/recording.json +1 -0
  558. package/src/app/assets/animations/success.json +1 -0
  559. package/src/app/assets/animations/voice_visualization.json +1 -0
  560. package/src/app/assets/businessCards/card_11.png +0 -0
  561. package/src/app/assets/businessCards/card_12_bg.png +0 -0
  562. package/src/app/assets/businessCards/card_wall_01.jpeg +0 -0
  563. package/src/app/assets/businessCards/card_wall_02.jpeg +0 -0
  564. package/src/app/assets/businessCards/card_wall_03.jpeg +0 -0
  565. package/src/app/assets/businessCards/card_wall_04.jpeg +0 -0
  566. package/src/app/assets/businessCards/card_wall_05.jpeg +0 -0
  567. package/src/app/assets/businessCards/card_wall_06.jpeg +0 -0
  568. package/src/app/assets/businessCards/card_wall_07.jpeg +0 -0
  569. package/src/app/assets/businessCards/card_wall_08.jpeg +0 -0
  570. package/src/app/assets/illustrations/empty.png +0 -0
  571. package/src/app/assets/illustrations/packages.png +0 -0
  572. package/src/app/assets/images/Digikhata_idzarHgH0q_0.png +0 -0
  573. package/src/app/assets/images/bank.png +0 -0
  574. package/src/app/assets/images/digiLogo-main.png +0 -0
  575. package/src/app/assets/images/svgviewer-output.svg +57 -0
  576. package/src/app/assets/images/user.png +0 -0
  577. package/src/app/assets/oldIcons/BILL.svg +3 -0
  578. package/src/app/assets/oldIcons/CASH.svg +4 -0
  579. package/src/app/assets/oldIcons/EXPENSE.svg +6 -0
  580. package/src/app/assets/oldIcons/STAFF.svg +3 -0
  581. package/src/app/assets/oldIcons/Sale Active.svg +14 -0
  582. package/src/app/assets/oldIcons/Stock.svg +5 -0
  583. package/src/app/assets/svg/BILL.svg +4 -0
  584. package/src/app/assets/svg/CASH.svg +6 -0
  585. package/src/app/assets/svg/EXPENSE.svg +5 -0
  586. package/src/app/assets/svg/More Icon.svg +6 -0
  587. package/src/app/assets/svg/Payment Icon.svg +4 -0
  588. package/src/app/assets/svg/Pos.svg +13 -0
  589. package/src/app/assets/svg/STAFF.svg +5 -0
  590. package/src/app/assets/svg/Sale Active.svg +8 -0
  591. package/src/app/assets/svg/Sale Icon.svg +3 -0
  592. package/src/app/assets/svg/Stock.svg +5 -0
  593. package/src/app/components/AccountSetupSteps.js +58 -0
  594. package/src/app/components/AddItemBillParent.js +373 -0
  595. package/src/app/components/AdditemBillChild.js +1257 -0
  596. package/src/app/components/Balance.js +211 -114
  597. package/src/app/components/BillList.js +548 -0
  598. package/src/app/components/BillSetupSteps.js +56 -0
  599. package/src/app/components/BottomView.js +39 -0
  600. package/src/app/components/BusinessCards/Card1.js +160 -0
  601. package/src/app/components/BusinessCards/Card10.js +209 -0
  602. package/src/app/components/BusinessCards/Card2.js +148 -0
  603. package/src/app/components/BusinessCards/Card3.js +147 -0
  604. package/src/app/components/BusinessCards/Card4.js +147 -0
  605. package/src/app/components/BusinessCards/Card5.js +151 -0
  606. package/src/app/components/BusinessCards/Card6.js +157 -0
  607. package/src/app/components/BusinessCards/Card7.js +146 -0
  608. package/src/app/components/BusinessCards/Card8.js +170 -0
  609. package/src/app/components/BusinessCards/Card9.js +209 -0
  610. package/src/app/components/BusinessCards/index.js +10 -0
  611. package/src/app/components/CashEntryComponent.js +297 -0
  612. package/src/app/components/CityModal.js +117 -0
  613. package/src/app/components/CountryPhoneInput.js +373 -267
  614. package/src/app/components/CreateExpenseAccount.js +141 -0
  615. package/src/app/components/CustomStatusBar.js +33 -0
  616. package/src/app/components/CustomToast.js +143 -0
  617. package/src/app/components/DeleteBusinessModal.js +196 -0
  618. package/src/app/components/DiscountTaxModal.js +256 -0
  619. package/src/app/components/Entries.js +87 -67
  620. package/src/app/components/ExpenseList.js +507 -0
  621. package/src/app/components/ExpenseParent.js +446 -0
  622. package/src/app/components/FloatingInput.js +188 -0
  623. package/src/app/components/Header.js +121 -0
  624. package/src/app/components/Loader.js +35 -0
  625. package/src/app/components/PartyModal.js +213 -0
  626. package/src/app/components/PickerModal.js +176 -0
  627. package/src/app/components/SalePaymentModal.js +822 -0
  628. package/src/app/components/SearchBar.js +225 -47
  629. package/src/app/components/StockDetailChild.js +461 -0
  630. package/src/app/components/StockList.js +582 -0
  631. package/src/app/components/StockReportTransaction.js +192 -0
  632. package/src/app/components/Transaction.js +277 -86
  633. package/src/app/components/User.js +188 -80
  634. package/src/app/components/index.js +51 -13
  635. package/src/app/database/bill.js +305 -0
  636. package/src/app/database/business.js +499 -0
  637. package/src/app/database/cash.js +451 -0
  638. package/src/app/database/clients.js +1536 -43
  639. package/src/app/database/expense.js +439 -0
  640. package/src/app/database/schema.js +115 -4
  641. package/src/app/database/stock.js +724 -0
  642. package/src/app/htmlTemplates/htmlTemplates.js +2603 -0
  643. package/src/app/navigation/BillStack/BillStack.js +38 -0
  644. package/src/app/navigation/BottomTabs/BottomTabs.js +24 -19
  645. package/src/app/navigation/BusinessStack/BusinessStack.js +27 -0
  646. package/src/app/navigation/CashStack/CashStack.js +59 -0
  647. package/src/app/navigation/EntriesStack/EntriesStack.js +186 -0
  648. package/src/app/navigation/ExpenseStack.js/ExpenseStack.js +50 -0
  649. package/src/app/navigation/HomeStack/HomeStack.js +106 -39
  650. package/src/app/navigation/Root.js +16 -1
  651. package/src/app/navigation/SaleStack/SaleStack.js +62 -0
  652. package/src/app/navigation/StockStack/StockStack.js +48 -0
  653. package/src/app/navigation/index.js +5 -1
  654. package/src/app/redux/Store.js +2 -0
  655. package/src/app/redux/reducers/client/client_reducers.js +31 -2
  656. package/src/app/redux/reducers/client/client_types.js +8 -1
  657. package/src/app/redux/reducers/user/user_reducers.js +24 -0
  658. package/src/app/redux/reducers/user/user_types.js +3 -0
  659. package/src/app/screens/AddBank.js +353 -0
  660. package/src/app/screens/AddBusiness.js +1161 -0
  661. package/src/app/screens/AddItems.js +515 -0
  662. package/src/app/screens/AddScreen.js +525 -165
  663. package/src/app/screens/All.js +1074 -0
  664. package/src/app/screens/AllTransactions.js +1138 -0
  665. package/src/app/screens/Banks.js +1134 -133
  666. package/src/app/screens/BillDetails.js +989 -0
  667. package/src/app/screens/BillHome.js +97 -0
  668. package/src/app/screens/BillParent.js +419 -0
  669. package/src/app/screens/BusinessDetail.js +939 -0
  670. package/src/app/screens/CashEntry.js +2913 -0
  671. package/src/app/screens/CashEntryDetails.js +650 -0
  672. package/src/app/screens/CashHome.js +594 -0
  673. package/src/app/screens/CashReport.js +1658 -0
  674. package/src/app/screens/CashSummary.js +607 -0
  675. package/src/app/screens/CreateBill.js +2504 -0
  676. package/src/app/screens/CustomerEntries.js +1578 -350
  677. package/src/app/screens/Customers.js +1066 -213
  678. package/src/app/screens/EditCategory.js +316 -0
  679. package/src/app/screens/EditCategoryStock.js +320 -0
  680. package/src/app/screens/Entry.js +2555 -585
  681. package/src/app/screens/ExpenseDetail.js +14 -0
  682. package/src/app/screens/ExpenseEntries.js +837 -0
  683. package/src/app/screens/ExpenseEntry.js +2478 -0
  684. package/src/app/screens/ExpenseEntryDetails.js +612 -0
  685. package/src/app/screens/ExpenseEntryReport.js +1059 -0
  686. package/src/app/screens/ExpenseReport.js +1071 -0
  687. package/src/app/screens/Geolocation.js +435 -0
  688. package/src/app/screens/GetStarted.js +201 -0
  689. package/src/app/screens/HomeScreen.js +368 -132
  690. package/src/app/screens/InBuy.js +918 -0
  691. package/src/app/screens/ItemEntryDetails.js +582 -0
  692. package/src/app/screens/LowStock.js +417 -0
  693. package/src/app/screens/NewPin.js +225 -0
  694. package/src/app/screens/OutSell.js +2153 -0
  695. package/src/app/screens/POSSale.js +639 -0
  696. package/src/app/screens/PinScreen.js +720 -0
  697. package/src/app/screens/PreviewBill.js +302 -0
  698. package/src/app/screens/Profile.js +1594 -0
  699. package/src/app/screens/RateList.js +525 -0
  700. package/src/app/screens/Report.js +1401 -0
  701. package/src/app/screens/SaleItemDetail.js +1187 -0
  702. package/src/app/screens/SaleParent.js +345 -0
  703. package/src/app/screens/SelectBank.js +220 -0
  704. package/src/app/screens/SelectBusiness.js +670 -163
  705. package/src/app/screens/Splash.js +96 -15
  706. package/src/app/screens/StockChild.js +372 -0
  707. package/src/app/screens/StockDetail.js +758 -0
  708. package/src/app/screens/StockParent.js +287 -0
  709. package/src/app/screens/StockReport.js +1359 -0
  710. package/src/app/screens/StockValue.js +720 -0
  711. package/src/app/screens/Suppliers.js +1098 -205
  712. package/src/app/screens/TransactionDetails.js +1674 -180
  713. package/src/app/screens/UpdateBusiness.js +837 -0
  714. package/src/app/screens/VisionCamera.js +54 -0
  715. package/src/app/screens/index.js +111 -21
  716. package/src/app/screens/new.html +171 -0
  717. package/src/app/themes/config.js +431 -114
  718. package/src/app/utils/city.json +7265 -0
@@ -1,240 +1,1093 @@
1
- import { View, Text, StyleSheet, TouchableOpacity, ScrollView } from 'react-native'
2
- import React, { useEffect } from 'react'
3
- import { COLORS, FONT_NORMAL, formatDateTime, HP, WP } from '../themes/config'
4
- import { Balance, Entries, SearchBar, User } from '../components'
5
- import Ionicons from "react-native-vector-icons/Ionicons"
6
- import FontAwesome6 from "react-native-vector-icons/FontAwesome6"
7
- import LinearGradient from 'react-native-linear-gradient'
8
- import { getAllClients, getClientDetails, getClientsByType } from '../database/clients';
9
- import { useSelector, useDispatch } from "react-redux";
10
- import { CLIENT_DETAILS, HOME_CUSTOMERS } from '../redux/reducers/client/client_types'
11
-
12
- export default function Customers({ navigation }) {
13
-
14
- const dispatch = useDispatch()
15
- const clients = useSelector(state => state.client.home_customers);
16
-
17
- useEffect(() => {
18
- const unsubscribe = navigation.addListener('focus', () => {
19
- getClientsByType(0).then(clients => {
20
- dispatch({ type: HOME_CUSTOMERS, payload: clients });
21
- console.log("Clients:", clients);
22
- }).catch(err => console.error(err));
23
- });
24
- return () => unsubscribe();
25
- }, [navigation]);
26
-
27
- const processed = clients.map((item) => {
28
- let amount = (parseFloat(item?.total_subamount) || 0) - (parseFloat(item?.total_amount) || 0);
29
-
30
- let type = "none";
31
- if (amount > 0) {
32
- type = "receivable";
33
- } else if (amount < 0) {
34
- type = "payable";
1
+ import {
2
+ View,
3
+ Text,
4
+ StyleSheet,
5
+ TouchableOpacity,
6
+ ScrollView,
7
+ Alert,
8
+ } from 'react-native';
9
+ import React, { useEffect, useState, useRef, useCallback } from 'react';
10
+ import {
11
+ COLORS,
12
+ FONT_BOLD,
13
+ FONT_MEDIUM,
14
+ FONT_NORMAL,
15
+ formatDateTime,
16
+ HP,
17
+ ICON_SIZES,
18
+ TEXT_SIZES,
19
+ WP,
20
+ } from '../themes/config';
21
+ import {
22
+ AccountSetupSteps,
23
+ Balance,
24
+ Entries,
25
+ SearchBar,
26
+ User,
27
+ } from '../components';
28
+ import Ionicons from 'react-native-vector-icons/Ionicons';
29
+ import FontAwesome6 from 'react-native-vector-icons/FontAwesome6';
30
+ import LinearGradient from 'react-native-linear-gradient';
31
+ import {
32
+ getAllClients,
33
+ getClientDetails,
34
+ getClientsByType,
35
+ getTransactionsByClientType,
36
+ } from '../database/clients';
37
+ import { useSelector, useDispatch } from 'react-redux';
38
+ import {
39
+ ALL_TRANSACTIONS,
40
+ CLIENT_DETAILS,
41
+ HOME_CUSTOMERS,
42
+ } from '../redux/reducers/client/client_types';
43
+ import Modal from 'react-native-modal';
44
+ import { generatePDF } from 'react-native-html-to-pdf';
45
+ import { viewDocument } from '@react-native-documents/viewer';
46
+ import { allCustomersTemplate } from '../htmlTemplates/htmlTemplates';
47
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
48
+ import { useFocusEffect } from '@react-navigation/native';
49
+ import { useNavigation } from '@react-navigation/native';
50
+
51
+ export default function Customers() {
52
+ const dispatch = useDispatch();
53
+ const insets = useSafeAreaInsets();
54
+ const searchBarRef = useRef(null);
55
+ const clients = useSelector((state) => state.client.home_customers);
56
+ const selectBusiness = useSelector((state) => state.client.selected_business);
57
+ const userClients = useSelector((state) => state.user.user_clients);
58
+ const userData = useSelector((state) => state.user.user_data);
59
+ const navigation = useNavigation();
60
+
61
+ const [IsFilterModal, setIsFilterModal] = useState(false);
62
+ const [SelectedSort, setSelectedSort] = useState('most_recent');
63
+ const [SelectedFilter, setSelectedFilter] = useState('all');
64
+ const [baseClients, setBaseClients] = useState([]);
65
+ const [displayClients, setDisplayClients] = useState([]);
66
+ const [searchText, setSearchText] = useState('');
67
+ const [Margin, setMargin] = useState(60);
68
+
69
+ useFocusEffect(
70
+ useCallback(() => {
71
+ (async () => {
72
+ try {
73
+ const clients = await getClientsByType(
74
+ 0,
75
+ null,
76
+ null,
77
+ selectBusiness?.id
78
+ );
79
+ const freshClients = addPayType(clients);
80
+
81
+ dispatch({ type: HOME_CUSTOMERS, payload: freshClients });
82
+ setBaseClients(freshClients);
83
+ setDisplayClients(freshClients);
84
+ setSelectedFilter('all');
85
+ setSelectedSort('most_recent');
86
+ setSearchText('');
87
+ handleSearch('', freshClients);
88
+ clearSearch();
89
+ } catch (err) {
90
+ console.error(err);
35
91
  }
92
+ })();
93
+
94
+ return () => { }; // optional cleanup
95
+ }, [navigation, selectBusiness])
96
+ );
97
+
98
+ function addPayType(clients) {
99
+ return clients.map((item) => {
100
+ const amount = (item?.total_subamount || 0) - (item?.total_amount || 0);
101
+ let pay_type = 'none';
102
+ if (amount > 0) pay_type = 'payable';
103
+ else if (amount < 0) pay_type = 'receivable';
104
+ return {
105
+ ...item,
106
+ amount: Math.abs(amount),
107
+ pay_type,
108
+ };
109
+ });
110
+ }
111
+
112
+ const processed = displayClients.map((item) => {
113
+ let amount =
114
+ (parseFloat(item?.total_subamount) || 0) -
115
+ (parseFloat(item?.total_amount) || 0);
116
+
117
+ let type = 'none';
118
+ if (amount > 0) {
119
+ type = 'receivable';
120
+ } else if (amount < 0) {
121
+ type = 'payable';
122
+ }
123
+
124
+ return {
125
+ type,
126
+ amount: Math.abs(amount),
127
+ };
128
+ });
129
+
130
+ const totals = processed.reduce(
131
+ (acc, item) => {
132
+ if (item.type === 'receivable') {
133
+ acc.receivable += item.amount;
134
+ } else if (item.type === 'payable') {
135
+ acc.payable += item.amount;
136
+ }
137
+ return acc;
138
+ },
139
+ { receivable: 0, payable: 0 }
140
+ );
141
+
142
+
143
+ // const totals = userClients.reduce(
144
+ // (acc, item) => {
145
+ // if (item?.type === "0") {
146
+ // acc.payable += Number(item?.amount) || 0;
147
+ // acc.receivable += Number(item?.subamount) || 0;
148
+ // }
149
+ // return acc;
150
+ // },
151
+ // { receivable: 0, payable: 0 }
152
+ // );
153
+
154
+ const applyFilterAndSort = async () => {
155
+ let clients = [];
156
+
157
+ // DB sort
158
+ if (
159
+ SelectedSort === 'most_recent' ||
160
+ SelectedSort === 'oldest' ||
161
+ SelectedSort === 'name_az' ||
162
+ SelectedSort === 'name_za'
163
+ ) {
164
+ clients = await getClientsByType(
165
+ 0,
166
+ SelectedSort,
167
+ null,
168
+ selectBusiness?.id
169
+ );
170
+ } else {
171
+ clients = await getClientsByType(0, null, null, selectBusiness?.id);
172
+ }
173
+
174
+ // Add pay_type + amount
175
+ let arr = clients.map((item) => {
176
+ let amount = item?.total_subamount - item?.total_amount;
177
+ let type = 'none';
178
+ if (amount > 0) type = 'payable';
179
+ else if (amount < 0) type = 'receivable';
180
+
181
+ return {
182
+ ...item,
183
+ amount: Math.abs(amount),
184
+ pay_type: type,
185
+ };
186
+ });
187
+
188
+ // Filters
189
+ if (SelectedFilter === 'receivable') {
190
+ arr = arr.filter((i) => i?.pay_type === 'receivable');
191
+ } else if (SelectedFilter === 'payable') {
192
+ arr = arr.filter((i) => i?.pay_type === 'payable');
193
+ } else if (SelectedFilter === 'settled') {
194
+ arr = arr.filter((i) => i?.amount === 0);
195
+ }
196
+
197
+ // Amount sorts
198
+ if (SelectedSort === 'highest_amount') {
199
+ arr.sort((a, b) => b.amount - a.amount);
200
+ } else if (SelectedSort === 'least_amount') {
201
+ arr.sort((a, b) => a.amount - b.amount);
202
+ }
203
+
204
+ // save the filtered/sorted list as the new base
205
+ setBaseClients(arr);
206
+
207
+ // also immediately apply search to it
208
+ handleSearch(searchText, arr);
209
+ };
210
+
211
+ const handleSearch = (text, source = baseClients) => {
212
+ setSearchText(text);
213
+
214
+ if (text.trim() === '') {
215
+ // show baseClients as is
216
+ setDisplayClients(source);
217
+ } else {
218
+ const q = text.toLowerCase();
219
+ const filtered = source.filter(
220
+ (item) =>
221
+ item.name?.toLowerCase().includes(q) ||
222
+ item.phone?.toLowerCase().includes(q)
223
+ );
224
+ setDisplayClients(filtered);
225
+ }
226
+ };
227
+
228
+ useEffect(() => {
229
+ const init = async () => {
230
+ // get initial data from DB (or from Redux if already loaded)
231
+ const clients = await getClientsByType(0, null, null, selectBusiness?.id);
232
+
233
+ // do the same mapping you always do
234
+ const arr = clients.map((item) => {
235
+ let amount = item?.total_subamount - item?.total_amount;
236
+ let type = 'none';
237
+ if (amount > 0) type = 'payable';
238
+ else if (amount < 0) type = 'receivable';
36
239
 
37
240
  return {
38
- type,
39
- amount: Math.abs(amount),
241
+ ...item,
242
+ amount: Math.abs(amount),
243
+ pay_type: type,
40
244
  };
245
+ });
246
+
247
+ // set both base & display to show initially
248
+ setBaseClients(arr);
249
+ setDisplayClients(arr);
250
+ };
251
+
252
+ init();
253
+ }, []);
254
+
255
+ const clearFilters = async () => {
256
+ // reset filter + sort states
257
+ setSelectedFilter('all'); // or '' if you prefer
258
+ setSelectedSort('most_recent'); // or '' if you prefer
259
+ setSearchText('');
260
+
261
+ // fetch fresh clients from DB
262
+ const clients = await getClientsByType(0, null, null, selectBusiness?.id);
263
+
264
+ // apply your mapping logic again
265
+ const arr = clients.map((item) => {
266
+ let amount = item?.total_subamount - item?.total_amount;
267
+ let type = 'none';
268
+ if (amount > 0) type = 'payable';
269
+ else if (amount < 0) type = 'receivable';
270
+
271
+ return {
272
+ ...item,
273
+ amount: Math.abs(amount),
274
+ pay_type: type,
275
+ };
41
276
  });
42
277
 
43
- const totals = processed.reduce(
44
- (acc, item) => {
45
- if (item.type === "receivable") {
46
- acc.receivable += item.amount;
47
- } else if (item.type === "payable") {
48
- acc.payable += item.amount;
49
- }
50
- return acc;
278
+ // reset base + display clients
279
+ setBaseClients(arr);
280
+ setDisplayClients(arr);
281
+ };
282
+
283
+ const showDownloadAlert = () => {
284
+ Alert.alert(
285
+ 'Download Customers List', // Title
286
+ 'Include Zero balance customers?', // Message
287
+ [
288
+ {
289
+ text: 'No',
290
+ onPress: () => createPDF(true),
291
+ style: 'cancel', // makes it a cancel button (iOS only)
51
292
  },
52
- { receivable: 0, payable: 0 }
293
+ {
294
+ text: 'Yes',
295
+ onPress: () => createPDF(false),
296
+ },
297
+ ],
298
+ { cancelable: true }
53
299
  );
300
+ };
54
301
 
302
+ const createPDF = async (include) => {
303
+ // 1️⃣ Build processedClients → keep existing amount & pay_type if present
304
+ const processedClients = displayClients?.map((item) => {
305
+ // If amount and pay_type already exist → keep them
306
+ if (item?.amount !== undefined && item?.pay_type !== undefined) {
307
+ return item;
308
+ }
55
309
 
310
+ // Otherwise calculate
311
+ let diff = (item?.total_subamount ?? 0) - (item?.total_amount ?? 0);
56
312
 
57
- return (
58
- <View style={Styles._mainContainer}>
59
- <ScrollView
60
- contentContainerStyle={{ alignItems: "center", paddingBottom: 60 }}
61
- showsVerticalScrollIndicator={false}
62
- >
63
- <Balance
64
- greenTitle={"You will give"}
65
- greenValue={totals?.receivable}
66
- redTitle={"You will get"}
67
- redValue={totals?.payable}
68
- />
69
- {/* <View style={{height:HP(7)}}></View> */}
70
- <Entries marginTop={70} />
71
-
72
- <View style={Styles._contentMain}>
73
- <View style={Styles._searchMain}>
74
- <View style={Styles._inputMain}>
75
- <SearchBar />
76
- </View>
77
-
78
- <View style={Styles._filterMain}>
79
- <TouchableOpacity
80
- activeOpacity={0.8}
81
- style={Styles._filterBtn}
82
- >
83
- <Ionicons
84
- name={"funnel-outline"}
85
- color={COLORS.primaryColor}
86
- size={27}
87
- />
88
- </TouchableOpacity>
89
-
90
- <TouchableOpacity
91
- activeOpacity={0.8}
92
- style={Styles._filterBtn}
93
- >
94
- <FontAwesome6
95
- name={"file-pdf"}
96
- color={COLORS.primaryColor}
97
- size={23}
98
- />
99
- </TouchableOpacity>
100
- </View>
101
- </View>
102
-
103
- <View>
104
- {
105
- clients.map((item, index) => {
106
- let amount = item?.total_subamount - item?.total_amount;
107
-
108
- let type = "none";
109
- if (amount > 0) {
110
- type = "receivable";
111
- } else if (amount < 0) {
112
- type = "payable";
113
- }
114
-
115
- amount = Math.abs(amount);
116
-
117
- // console.log({amount,type})
118
-
119
- return (
120
- <User
121
- key={index}
122
- name={item?.name}
123
- addedAt={formatDateTime(item?.latest_updated_at)}
124
- amount={amount}
125
- type={type}
126
- avatarColor={item?.avatarColor}
127
- clientType={item?.type}
128
- onPress={() => {
129
- getClientDetails(item?.id).then((res) => {
130
- dispatch({
131
- type: CLIENT_DETAILS,
132
- payload: res
133
- })
134
- navigation.navigate("CustomerEntries", { homeDetails: item })
135
- })
136
- }}
137
- />
138
- );
139
- })
140
- }
141
-
142
- </View>
313
+ let pay_type = 'none';
314
+ if (diff > 0) {
315
+ pay_type = 'receivable';
316
+ } else if (diff < 0) {
317
+ pay_type = 'payable';
318
+ }
319
+
320
+ return {
321
+ ...item,
322
+ amount: Math.abs(diff),
323
+ pay_type, // 🔹 new field name
324
+ };
325
+ });
326
+
327
+ // 2️⃣ Filter if include = true
328
+ const finalSelection = include
329
+ ? processedClients?.filter((item) => Number(item?.amount) !== 0)
330
+ : processedClients;
331
+
332
+ // 3️⃣ Generate HTML
333
+ const html = allCustomersTemplate(
334
+ finalSelection,
335
+ totals?.payable ?? 0,
336
+ totals?.receivable ?? 0,
337
+ 2
338
+ );
339
+ // 4️⃣ PDF options (adjust directory according to library)
340
+ let options = {
341
+ html: html,
342
+ fileName: 'report',
343
+ base64: false,
344
+ };
345
+
346
+ // 5️⃣ Generate PDF + view
347
+ try {
348
+ let results = await generatePDF(options);
349
+ console.log('PDF Path:', results?.filePath);
350
+
351
+ // Only prepend file:// if needed
352
+ const uri = results?.filePath.startsWith('file://')
353
+ ? results?.filePath
354
+ : 'file://' + results?.filePath;
355
+
356
+ viewDocument({ uri });
357
+ } catch (err) {
358
+ console.error('PDF generation failed:', err);
359
+ }
360
+ };
361
+
362
+ const clearSearch = () => {
363
+ searchBarRef.current?.clearInputSilent();
364
+ };
365
+
366
+
367
+ return (
368
+ <View style={Styles._mainContainer}>
369
+ <ScrollView
370
+ contentContainerStyle={{ alignItems: 'center', paddingBottom: 200 }}
371
+ showsVerticalScrollIndicator={false}
372
+ >
373
+ <Balance
374
+ greenTitle={'You will give'}
375
+ greenValue={totals?.receivable}
376
+ redTitle={'You will get'}
377
+ redValue={totals?.payable}
378
+ onToggleBalance={(bal) => {
379
+ if (bal) {
380
+ setMargin(30);
381
+ } else {
382
+ setMargin(60);
383
+ }
384
+ }}
385
+ onArrowPress={() => {
386
+ getTransactionsByClientType(
387
+ '0',
388
+ null,
389
+ null,
390
+ selectBusiness?.id
391
+ ).then((res) => {
392
+ dispatch({
393
+ type: ALL_TRANSACTIONS,
394
+ payload: res,
395
+ });
396
+ navigation.navigate('AllTransactions', { clientType: '0' });
397
+ });
398
+ }}
399
+ />
400
+ {/* <View style={{height:HP(7)}}></View> */}
401
+ <Entries marginTop={Margin} navigation={navigation} />
402
+
403
+ <View style={Styles._contentMain}>
404
+ <View style={Styles._searchMain}>
405
+ {clients && clients.length > 0 && (
406
+ <>
407
+ <View style={Styles._inputMain}>
408
+ <SearchBar
409
+ onChangeText={(text) => handleSearch(text)}
410
+ ref={searchBarRef}
411
+ // placeholder={clients.length + " Customers"}
412
+ />
143
413
  </View>
144
- </ScrollView>
414
+
415
+ <View style={Styles._filterMain}>
416
+ <TouchableOpacity
417
+ activeOpacity={0.8}
418
+ style={Styles._filterBtn}
419
+ onPress={() => setIsFilterModal(true)}
420
+ >
421
+ <Ionicons
422
+ name={'funnel-outline'}
423
+ color={COLORS.primaryColor}
424
+ size={27}
425
+ />
426
+ </TouchableOpacity>
427
+
428
+ <TouchableOpacity
429
+ activeOpacity={0.8}
430
+ style={Styles._filterBtn}
431
+ onPress={() => {
432
+ showDownloadAlert();
433
+ }}
434
+ >
435
+ <FontAwesome6
436
+ name={'file-pdf'}
437
+ color={COLORS.primaryColor}
438
+ size={23}
439
+ />
440
+ </TouchableOpacity>
441
+ </View>
442
+ </>
443
+ )}
444
+ </View>
445
+
446
+ <View>
447
+ {displayClients && displayClients.length > 0 ? (
448
+ displayClients
449
+ .map((item, index) => {
450
+ let amount = item?.total_subamount - item?.total_amount;
451
+
452
+
453
+ let type = 'none';
454
+ if (amount > 0) {
455
+ type = 'receivable';
456
+ } else if (amount < 0) {
457
+ type = 'payable';
458
+ }
459
+
460
+ amount = Math.abs(amount);
461
+
462
+ return (
463
+ <User
464
+ key={index}
465
+ name={item?.name}
466
+ addedAt={formatDateTime(
467
+ item?.latest_transaction_date || item?.created_at
468
+ )}
469
+ amount={amount}
470
+ type={type}
471
+ avatarColor={item?.avatarColor}
472
+ clientType={item?.type}
473
+ icon={item?.local_path}
474
+ mainContainer={{
475
+ padding: 0,
476
+ width: WP(100),
477
+ paddingHorizontal: WP(2),
478
+ }}
479
+ onPress={() => {
480
+ getClientDetails(item?.id).then((res) => {
481
+ dispatch({
482
+ type: CLIENT_DETAILS,
483
+ payload: res,
484
+ });
485
+ navigation.navigate('CustomerEntries', {
486
+ homeDetails: item,
487
+ });
488
+ });
489
+
490
+ // dispatch({
491
+ // type: CLIENT_DETAILS,
492
+ // payload: item,
493
+ // });
494
+ // navigation.navigate('CustomerEntries', {
495
+ // homeDetails: item,
496
+ // });
497
+
498
+ // console.log({ item })
499
+ }}
500
+ />
501
+ );
502
+ })
503
+ ) : (
504
+ <View>
505
+ <AccountSetupSteps />
506
+ </View>
507
+ )}
508
+
509
+ </View>
510
+ </View>
511
+ </ScrollView>
512
+
513
+ <TouchableOpacity
514
+ style={[Styles._floatingBtn, { bottom: 70 + insets.bottom }]}
515
+ activeOpacity={0.8}
516
+ onPress={() => {
517
+ navigation.navigate('AddScreen', { type: 0 });
518
+ }}
519
+ >
520
+ <LinearGradient
521
+ start={{ x: 0, y: 0 }}
522
+ end={{ x: 1, y: 0 }}
523
+ colors={[COLORS.primaryColor, COLORS.secondaryColor]}
524
+ style={Styles._linearGradient}
525
+ >
526
+ <Ionicons
527
+ name={'person-add-outline'}
528
+ color={COLORS.whiteColor}
529
+ size={20}
530
+ style={{ paddingLeft: 10 }}
531
+ />
532
+
533
+ <Text style={Styles._fabTxt}>ADD CUSTOMER</Text>
534
+ </LinearGradient>
535
+ </TouchableOpacity>
536
+
537
+ {(SelectedFilter !== 'all' || SelectedSort !== 'most_recent') && (
538
+ <TouchableOpacity
539
+ style={[
540
+ Styles._floatingBtn,
541
+ { bottom: 125 + insets.bottom, width: 'auto' },
542
+ ]}
543
+ activeOpacity={0.8}
544
+ onPress={() => {
545
+ setSelectedFilter('all');
546
+ setSelectedSort('most_recent');
547
+ clearFilters();
548
+ }}
549
+ >
550
+ <LinearGradient
551
+ start={{ x: 0, y: 0 }}
552
+ end={{ x: 1, y: 0 }}
553
+ colors={[COLORS.grey, COLORS.grey]}
554
+ style={[
555
+ Styles._linearGradient,
556
+ { paddingHorizontal: 10, justifyContent: 'none' },
557
+ ]}
558
+ >
559
+ <Ionicons
560
+ name={'close'}
561
+ color={COLORS.blackColor}
562
+ size={ICON_SIZES.FAB_ICON}
563
+ />
564
+ <Text
565
+ style={[
566
+ Styles._fabTxt,
567
+ { color: COLORS.blackColor, paddingRight: 0 },
568
+ ]}
569
+ >
570
+ Clear filter
571
+ </Text>
572
+ </LinearGradient>
573
+ </TouchableOpacity>
574
+ )}
575
+
576
+ <Modal
577
+ isVisible={IsFilterModal}
578
+ onBackButtonPress={() => {
579
+ setIsFilterModal(false);
580
+ clearFilters();
581
+ }}
582
+ onBackdropPress={() => {
583
+ setIsFilterModal(false);
584
+ clearFilters();
585
+ }}
586
+ style={Styles._modal}
587
+ >
588
+ <View style={Styles._modalMain}>
589
+ <Text style={Styles._modalTitle}>Filter By</Text>
590
+ <View style={Styles._filtersMain}>
591
+ <TouchableOpacity
592
+ activeOpacity={0.8}
593
+ style={[
594
+ Styles._filterSelect,
595
+ {
596
+ justifyContent: 'center',
597
+ borderColor:
598
+ SelectedFilter == 'all'
599
+ ? COLORS.primaryColor
600
+ : COLORS.whiteColor,
601
+ borderWidth: 1,
602
+ },
603
+ ]}
604
+ onPress={() => {
605
+ // setIsFilterModal(false)
606
+ setSelectedFilter('all');
607
+ }}
608
+ >
609
+ <Text style={Styles._filterSelectText}>All</Text>
610
+ </TouchableOpacity>
145
611
 
146
612
  <TouchableOpacity
147
- style={Styles._floatingBtn}
613
+ activeOpacity={0.8}
614
+ style={[
615
+ Styles._filterSelect,
616
+ {
617
+ paddingHorizontal: 20,
618
+ gap: 8,
619
+ borderColor:
620
+ SelectedFilter == 'receivable'
621
+ ? COLORS.primaryColor
622
+ : COLORS.whiteColor,
623
+ borderWidth: 1,
624
+ },
625
+ ]}
626
+ onPress={() => {
627
+ // setIsFilterModal(false)
628
+ setSelectedFilter('receivable');
629
+ }}
630
+ >
631
+ <Ionicons name={'remove'} color={COLORS.redColor} size={20} />
632
+ <Text style={[Styles._filterSelectText]}>Receivable</Text>
633
+ </TouchableOpacity>
634
+
635
+ <TouchableOpacity
636
+ activeOpacity={0.8}
637
+ style={[
638
+ Styles._filterSelect,
639
+ {
640
+ paddingHorizontal: 20,
641
+ gap: 8,
642
+ borderColor:
643
+ SelectedFilter == 'payable'
644
+ ? COLORS.primaryColor
645
+ : COLORS.whiteColor,
646
+ borderWidth: 1,
647
+ },
648
+ ]}
649
+ onPress={() => {
650
+ setSelectedFilter('payable');
651
+ // setIsFilterModal(false)
652
+ }}
653
+ >
654
+ <Ionicons name={'add'} color={'green'} size={20} />
655
+ <Text style={[Styles._filterSelectText]}>Payable</Text>
656
+ </TouchableOpacity>
657
+ </View>
658
+
659
+ <TouchableOpacity
660
+ activeOpacity={0.8}
661
+ style={[
662
+ Styles._filterSelect,
663
+ {
664
+ paddingHorizontal: 20,
665
+ gap: 8,
666
+ alignSelf: 'flex-start',
667
+ marginTop: 8,
668
+ borderColor:
669
+ SelectedFilter == 'settled'
670
+ ? COLORS.primaryColor
671
+ : COLORS.whiteColor,
672
+ borderWidth: 1,
673
+ },
674
+ ]}
675
+ onPress={() => {
676
+ setSelectedFilter('settled');
677
+ // setIsFilterModal(false)
678
+ }}
679
+ >
680
+ <Text style={Styles._filterSelectText}>0</Text>
681
+ <Text style={[Styles._filterSelectText]}>Settled</Text>
682
+ </TouchableOpacity>
683
+
684
+ <View style={Styles._sortMain}>
685
+ <Text style={Styles._modalTitle}>Sort by</Text>
686
+ <View style={Styles._sortOptionsMain}>
687
+ <TouchableOpacity
688
+ style={Styles._option}
148
689
  activeOpacity={0.8}
149
690
  onPress={() => {
150
- navigation.navigate("AddScreen", { type: 0 });
691
+ // setIsFilterModal(false)
692
+ setSelectedSort('most_recent');
151
693
  }}
694
+ >
695
+ <Text
696
+ style={[
697
+ Styles._optionTitle,
698
+ {
699
+ color:
700
+ SelectedSort === 'most_recent'
701
+ ? COLORS.primaryColor
702
+ : COLORS.blackColor,
703
+ },
704
+ ]}
705
+ >
706
+ Most Recent
707
+ </Text>
708
+ <Ionicons
709
+ name={
710
+ SelectedSort === 'most_recent'
711
+ ? 'radio-button-on'
712
+ : 'radio-button-off'
713
+ }
714
+ color={
715
+ SelectedSort === 'most_recent'
716
+ ? COLORS.primaryColor
717
+ : COLORS.darkGrey
718
+ }
719
+ size={25}
720
+ />
721
+ </TouchableOpacity>
152
722
 
153
- >
154
- <LinearGradient
155
- start={{ x: 0, y: 0 }}
156
- end={{ x: 1, y: 0 }}
157
- colors={[COLORS.secondaryColor, COLORS.primaryColor]}
158
- style={Styles._linearGradient}
723
+ <TouchableOpacity
724
+ style={Styles._option}
725
+ activeOpacity={0.8}
726
+ onPress={() => {
727
+ // setIsFilterModal(false)
728
+ setSelectedSort('highest_amount');
729
+ }}
730
+ >
731
+ <Text
732
+ style={[
733
+ Styles._optionTitle,
734
+ {
735
+ color:
736
+ SelectedSort === 'highest_amount'
737
+ ? COLORS.primaryColor
738
+ : COLORS.blackColor,
739
+ },
740
+ ]}
159
741
  >
160
- <Ionicons
161
- name={"person-add-outline"}
162
- color={COLORS.whiteColor}
163
- size={22}
164
- style={{ paddingLeft: 10 }}
165
- />
742
+ Highest Amount
743
+ </Text>
744
+ <Ionicons
745
+ name={
746
+ SelectedSort === 'highest_amount'
747
+ ? 'radio-button-on'
748
+ : 'radio-button-off'
749
+ }
750
+ color={
751
+ SelectedSort === 'highest_amount'
752
+ ? COLORS.primaryColor
753
+ : COLORS.darkGrey
754
+ }
755
+ size={25}
756
+ />
757
+ </TouchableOpacity>
166
758
 
167
- <Text style={Styles._fabTxt}>ADD CUSTOMER</Text>
168
- </LinearGradient>
169
- </TouchableOpacity>
759
+ <TouchableOpacity
760
+ style={Styles._option}
761
+ activeOpacity={0.8}
762
+ onPress={() => {
763
+ // setIsFilterModal(false)
764
+ setSelectedSort('name_az');
765
+ }}
766
+ >
767
+ <Text
768
+ style={[
769
+ Styles._optionTitle,
770
+ {
771
+ color:
772
+ SelectedSort === 'name_az'
773
+ ? COLORS.primaryColor
774
+ : COLORS.blackColor,
775
+ },
776
+ ]}
777
+ >
778
+ By Name (A-Z)
779
+ </Text>
780
+ <Ionicons
781
+ name={
782
+ SelectedSort === 'name_az'
783
+ ? 'radio-button-on'
784
+ : 'radio-button-off'
785
+ }
786
+ color={
787
+ SelectedSort === 'name_az'
788
+ ? COLORS.primaryColor
789
+ : COLORS.darkGrey
790
+ }
791
+ size={25}
792
+ />
793
+ </TouchableOpacity>
794
+
795
+ <TouchableOpacity
796
+ style={Styles._option}
797
+ activeOpacity={0.8}
798
+ onPress={() => {
799
+ // setIsFilterModal(false)
800
+ setSelectedSort('oldest');
801
+ }}
802
+ >
803
+ <Text
804
+ style={[
805
+ Styles._optionTitle,
806
+ {
807
+ color:
808
+ SelectedSort === 'oldest'
809
+ ? COLORS.primaryColor
810
+ : COLORS.blackColor,
811
+ },
812
+ ]}
813
+ >
814
+ Oldest
815
+ </Text>
816
+ <Ionicons
817
+ name={
818
+ SelectedSort === 'oldest'
819
+ ? 'radio-button-on'
820
+ : 'radio-button-off'
821
+ }
822
+ color={
823
+ SelectedSort === 'oldest'
824
+ ? COLORS.primaryColor
825
+ : COLORS.darkGrey
826
+ }
827
+ size={25}
828
+ />
829
+ </TouchableOpacity>
830
+
831
+ <TouchableOpacity
832
+ style={Styles._option}
833
+ activeOpacity={0.8}
834
+ onPress={() => {
835
+ // setIsFilterModal(false)
836
+ setSelectedSort('least_amount');
837
+ }}
838
+ >
839
+ <Text
840
+ style={[
841
+ Styles._optionTitle,
842
+ {
843
+ color:
844
+ SelectedSort === 'least_amount'
845
+ ? COLORS.primaryColor
846
+ : COLORS.blackColor,
847
+ },
848
+ ]}
849
+ >
850
+ Least Amount
851
+ </Text>
852
+ <Ionicons
853
+ name={
854
+ SelectedSort === 'least_amount'
855
+ ? 'radio-button-on'
856
+ : 'radio-button-off'
857
+ }
858
+ color={
859
+ SelectedSort === 'least_amount'
860
+ ? COLORS.primaryColor
861
+ : COLORS.darkGrey
862
+ }
863
+ size={25}
864
+ />
865
+ </TouchableOpacity>
866
+
867
+ <TouchableOpacity
868
+ style={Styles._option}
869
+ activeOpacity={0.8}
870
+ onPress={() => {
871
+ // setIsFilterModal(false)
872
+ setSelectedSort('name_za');
873
+ }}
874
+ >
875
+ <Text
876
+ style={[
877
+ Styles._optionTitle,
878
+ {
879
+ color:
880
+ SelectedSort === 'name_za'
881
+ ? COLORS.primaryColor
882
+ : COLORS.blackColor,
883
+ },
884
+ ]}
885
+ >
886
+ By Name (Z-A)
887
+ </Text>
888
+ <Ionicons
889
+ name={
890
+ SelectedSort === 'name_za'
891
+ ? 'radio-button-on'
892
+ : 'radio-button-off'
893
+ }
894
+ color={
895
+ SelectedSort === 'name_za'
896
+ ? COLORS.primaryColor
897
+ : COLORS.darkGrey
898
+ }
899
+ size={25}
900
+ />
901
+ </TouchableOpacity>
902
+ </View>
903
+ </View>
904
+
905
+ <TouchableOpacity
906
+ activeOpacity={0.8}
907
+ style={Styles._resultBtn}
908
+ onPress={() => {
909
+ applyFilterAndSort();
910
+ setIsFilterModal(false);
911
+ }}
912
+ >
913
+ <Text style={Styles._resultText}>VIEW RESULT</Text>
914
+ </TouchableOpacity>
170
915
  </View>
171
- )
916
+ </Modal>
917
+ </View>
918
+ );
172
919
  }
173
920
 
174
921
  const Styles = StyleSheet.create({
175
- _mainContainer: {
176
- flex: 1,
177
- backgroundColor: COLORS.backgroundColor,
178
- alignItems: "center",
179
- },
180
- _contentMain: {
181
- width: WP(100),
182
- // height: 30,
183
- backgroundColor: COLORS.whiteColor,
184
- paddingHorizontal: 15,
185
- marginTop: 6
186
- },
187
- _searchMain: {
188
- width: "100%",
189
- flexDirection: "row",
190
- // height:40,
191
- paddingVertical: 20,
192
- },
193
- _inputMain: {
194
- width: "75%"
195
- },
196
- _filterMain: {
197
- flexDirection: "row",
198
- alignItems: "center",
199
- justifyContent: "center",
200
- gap: 11,
201
- paddingLeft: 10
202
- },
203
- _filterBtn: {
204
- width: 35,
205
- height: 35,
206
- justifyContent: "center",
207
- alignItems: "center"
208
- // backgroundColor:"red"
209
- },
210
- _floatingBtn: {
211
- width: WP(38),
212
- height: 42,
213
- position: "absolute",
214
- right: 12,
215
- bottom: 70,
216
- borderRadius: 40,
217
- overflow: "hidden",
218
- shadowColor: "#000",
219
- shadowOffset: {
220
- width: 0,
221
- height: 2,
222
- },
223
- shadowOpacity: 0.2,
224
- shadowRadius: 3.84,
225
- elevation: 5,
922
+ _mainContainer: {
923
+ flex: 1,
924
+ backgroundColor: COLORS.whi,
925
+ alignItems: 'center',
926
+ },
927
+ _contentMain: {
928
+ // width: WP(100),
929
+ // height: 30,
930
+ backgroundColor: COLORS.whiteColor,
931
+ // paddingHorizontal: 15,
932
+ marginTop: 10,
933
+ },
934
+ _searchMain: {
935
+ width: WP(100),
936
+ // justifyContent: 'center',
937
+ alignSelf: 'center',
938
+ flexDirection: 'row',
939
+ // height:40,
940
+ // padding: 3,
941
+ paddingVertical: 12,
942
+ paddingHorizontal: WP(2),
943
+ // backgroundColor:"red"
944
+ },
945
+ _inputMain: {
946
+ width: '75%',
947
+ },
948
+ _filterMain: {
949
+ flexDirection: 'row',
950
+ alignItems: 'center',
951
+ justifyContent: 'center',
952
+ gap: 11,
953
+ paddingLeft: 10,
954
+ },
955
+ _filterBtn: {
956
+ width: 35,
957
+ height: 35,
958
+ justifyContent: 'center',
959
+ alignItems: 'center',
960
+ // backgroundColor:"red"
961
+ },
962
+ _floatingBtn: {
963
+ // width: WP(45),
964
+ height: 50,
965
+ position: 'absolute',
966
+ right: 12,
967
+ bottom: 70,
968
+ borderRadius: 100,
969
+ overflow: 'hidden',
970
+ shadowColor: '#000',
971
+ shadowOffset: {
972
+ width: 0,
973
+ height: 2,
226
974
  },
227
- _linearGradient: {
228
- width: "100%",
229
- height: "100%",
230
- flexDirection: "row",
231
- justifyContent: "space-between",
232
- alignItems: "center",
975
+ shadowOpacity: 0.2,
976
+ shadowRadius: 3.84,
977
+ elevation: 5,
978
+ },
979
+ _linearGradient: {
980
+ // width: "100%",
981
+ height: '100%',
982
+ flexDirection: 'row',
983
+ justifyContent: 'space-between',
984
+ alignItems: 'center',
985
+ gap: 10,
986
+ },
987
+ _fabTxt: {
988
+ color: COLORS.whiteColor,
989
+ fontSize: TEXT_SIZES.FLOATING_BUTTON_TEXT,
990
+ fontFamily: FONT_MEDIUM,
991
+ paddingRight: 10,
992
+ },
993
+ _modal: {
994
+ margin: 0,
995
+ padding: 0,
996
+ justifyContent: 'flex-end',
997
+ },
998
+ _modalMain: {
999
+ width: WP(100),
1000
+ // height: HP(45),
1001
+ backgroundColor: COLORS.backgroundColor,
1002
+ borderTopRightRadius: 15,
1003
+ borderTopLeftRadius: 15,
1004
+ paddingHorizontal: 25,
1005
+ paddingTop: 15,
1006
+ alignItems: 'center',
1007
+ paddingBottom: 20,
1008
+ },
1009
+ _modalTitle: {
1010
+ color: COLORS.blackColor,
1011
+ fontFamily: FONT_MEDIUM,
1012
+ fontSize: 18,
1013
+ },
1014
+ _filtersMain: {
1015
+ width: '100%',
1016
+ height: 40,
1017
+ flexDirection: 'row',
1018
+ alignItems: 'center',
1019
+ justifyContent: 'space-between',
1020
+ marginTop: 10,
1021
+ },
1022
+ _filterSelect: {
1023
+ minWidth: 65,
1024
+ height: 38,
1025
+ backgroundColor: COLORS.whiteColor,
1026
+ borderRadius: 100,
1027
+ flexDirection: 'row',
1028
+ justifyContent: 'space-between',
1029
+ alignItems: 'center',
1030
+ shadowColor: '#000',
1031
+ shadowOffset: {
1032
+ width: 0,
1033
+ height: 2,
233
1034
  },
234
- _fabTxt: {
235
- color: COLORS.whiteColor,
236
- fontSize: 12,
237
- fontFamily: FONT_NORMAL,
238
- paddingRight: 10,
1035
+ shadowOpacity: 0.2,
1036
+ shadowRadius: 3.84,
1037
+ elevation: 3,
1038
+ },
1039
+ _filterSelectText: {
1040
+ color: COLORS.blackColor,
1041
+ fontFamily: FONT_NORMAL,
1042
+ fontSize: 13,
1043
+ },
1044
+ _sortMain: {
1045
+ marginTop: 20,
1046
+ alignItems: 'center',
1047
+ gap: 12,
1048
+ },
1049
+ _sortOptionsMain: {
1050
+ width: '100%',
1051
+ // height: 200,
1052
+ backgroundColor: COLORS.whiteColor,
1053
+ shadowColor: '#000',
1054
+ shadowOffset: {
1055
+ width: 0,
1056
+ height: 2,
239
1057
  },
240
- })
1058
+ shadowOpacity: 0.2,
1059
+ shadowRadius: 3.84,
1060
+ elevation: 3,
1061
+ paddingHorizontal: 12,
1062
+ borderRadius: 12,
1063
+ paddingVertical: 10,
1064
+ },
1065
+ _option: {
1066
+ width: '100%',
1067
+ height: 45,
1068
+ // backgroundColor: "red",
1069
+ alignSelf: 'center',
1070
+ flexDirection: 'row',
1071
+ justifyContent: 'space-between',
1072
+ alignItems: 'center',
1073
+ },
1074
+ _optionTitle: {
1075
+ color: COLORS.blackColor,
1076
+ fontFamily: FONT_NORMAL,
1077
+ fontSize: 13,
1078
+ },
1079
+ _resultBtn: {
1080
+ width: '100%',
1081
+ height: 45,
1082
+ backgroundColor: COLORS.primaryColor,
1083
+ borderRadius: 100,
1084
+ marginTop: 20,
1085
+ justifyContent: 'center',
1086
+ alignItems: 'center',
1087
+ },
1088
+ _resultText: {
1089
+ color: COLORS.whiteColor,
1090
+ fontFamily: FONT_BOLD,
1091
+ fontSize: 14,
1092
+ },
1093
+ });