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
@@ -0,0 +1,2504 @@
1
+ "use strict";
2
+
3
+ import { addCommas, formatMyDate, formatTime, fromJsDateToSql } from "../themes/config.js";
4
+ export const allTransactionsTemplate = (data, StartDate, EndDate, netBalance, totalAmount, totalSubAmount, totalBalance, type) => {
5
+ const generateTableRows = () => {
6
+ return data?.map((item, index) => `<tr>
7
+ <td>${index + 1}</td>
8
+ <td>${formatMyDate(item?.date)}</td>
9
+ <td>${item?.client_name}</td>
10
+ <td>${item?.notes?.split("_")[0]}</td>
11
+ <td class="debit-cell">Rs ${item?.amount}</td>
12
+ <td class="credit-cell">Rs ${item?.subamount}</td>
13
+ <td style="color:${item?.balance < 0 ? "red" : "green"} ;">Rs ${Math.abs(item?.balance)}</td>
14
+ </tr>
15
+ `).join('');
16
+ };
17
+ const htmlContent = `
18
+ <html>
19
+
20
+ <head>
21
+ <style>
22
+ @page {
23
+ margin-bottom: 80px;
24
+ }
25
+
26
+ body {
27
+ font-family: Arial, sans-serif;
28
+ margin: 0;
29
+ padding: 0;
30
+ }
31
+
32
+ .header {
33
+ background-color: #FF5F00;
34
+ color: white;
35
+ text-align: center;
36
+ padding: 2px 0;
37
+ font-size: 20px;
38
+ font-weight: bold;
39
+ }
40
+
41
+ .footer {
42
+ background-color: orange;
43
+ color: white;
44
+ text-align: center;
45
+ padding: 5px 0;
46
+ position: fixed;
47
+ bottom: 0;
48
+ width: 100%;
49
+ height: 60px;
50
+ }
51
+
52
+ .content {
53
+ padding-bottom: 100px;
54
+ }
55
+
56
+ .logo {
57
+ width: 130px;
58
+ height: auto;
59
+ }
60
+
61
+ .top {
62
+ width: 100%;
63
+ text-align: center;
64
+ }
65
+
66
+ .summary-box {
67
+ width: 90%;
68
+ margin: 15px auto;
69
+ display: flex;
70
+ justify-content: space-between;
71
+ border: 1px solid #ccc;
72
+ padding: 10px;
73
+ border-radius: 5px;
74
+ }
75
+
76
+ .summary-item {
77
+ width: 32%;
78
+ background-color: #f9f9f9;
79
+ text-align: center;
80
+ padding: 10px;
81
+ border-radius: 5px;
82
+ }
83
+
84
+ .summary-item h4 {
85
+ margin: 0;
86
+ font-size: 14px;
87
+ }
88
+
89
+ .summary-item p {
90
+ margin: 5px 0 0 0;
91
+ font-size: 16px;
92
+ font-weight: bold;
93
+ }
94
+
95
+ table {
96
+ width: 100%;
97
+ border-collapse: collapse;
98
+ margin-top: 20px;
99
+ }
100
+
101
+ th,
102
+ td {
103
+ border: 1px solid #000;
104
+ padding: 8px;
105
+ text-align: center;
106
+ font-size: 12px;
107
+ }
108
+
109
+ th {
110
+ background-color: #f2f2f2;
111
+ }
112
+
113
+ .debit-cell {
114
+ background-color: #f8d7da;
115
+ /* light red */
116
+ }
117
+
118
+ .credit-cell {
119
+ background-color: #d4edda;
120
+ /* light green */
121
+ }
122
+
123
+ thead {
124
+ display: table-header-group;
125
+ }
126
+
127
+ tfoot {
128
+ display: table-footer-group;
129
+ }
130
+
131
+ tr {
132
+ page-break-inside: avoid;
133
+ }
134
+
135
+ .totals {
136
+ width: 90%;
137
+ margin: 20px auto;
138
+ text-align: center;
139
+ border: 1px solid #ccc;
140
+ padding: 10px;
141
+ border-radius: 5px;
142
+ background: #f9f9f9;
143
+ }
144
+
145
+ .report-generated {
146
+ width: 90%;
147
+ margin: 5px auto;
148
+ text-align: right;
149
+ font-size: 10px;
150
+ color: #555;
151
+ }
152
+ .title {
153
+ color: white;
154
+ font-size: 25px
155
+ }
156
+ </style>
157
+ </head>
158
+
159
+ <body>
160
+ <div class="header">
161
+ <p class="title">DigiKhata</p>
162
+ </div>
163
+
164
+ <div class="content">
165
+ <div class="top">
166
+ <h3>Account Statement</h3>
167
+ <p>
168
+ ${StartDate === "" && EndDate === "" ? "All Transactions" : `${new Date(StartDate).toDateString()} - ${new Date(EndDate).toDateString()}`}
169
+ </p>
170
+ </div>
171
+
172
+ <!-- Summary Box -->
173
+ <div class="summary-box">
174
+ <div class="summary-item">
175
+ <h4>Net Balance</h4>
176
+ <p style="color: ${type == "receivable" ? "green" : "red"};">Rs ${Math.abs(netBalance)}</p>
177
+ </div>
178
+ <div class="summary-item">
179
+ <h4>Total Debit</h4>
180
+ <p style="color: red">Rs ${Math.abs(totalAmount)}</p>
181
+ </div>
182
+ <div class="summary-item">
183
+ <h4>Total Credit</h4>
184
+ <p style="color: green">Rs ${Math.abs(totalSubAmount)}</p>
185
+ </div>
186
+ </div>
187
+
188
+ <!-- Table -->
189
+ <table style="width:90%; margin: 0 auto;">
190
+ <thead>
191
+ <tr>
192
+ <th>Sr #</th>
193
+ <th>Date</th>
194
+ <th>Name</th>
195
+ <th>Details</th>
196
+ <th>Debit</th>
197
+ <th>Credit</th>
198
+ <th>Balance</th>
199
+ </tr>
200
+ </thead>
201
+ <tbody>
202
+ ${generateTableRows()}
203
+ </tbody>
204
+ </table>
205
+
206
+ <!-- Totals Section -->
207
+ <div class="totals">
208
+ <p><strong>Grand Total Debit:</strong> Rs ${Math.abs(totalAmount)}</p>
209
+ <p><strong>Grand Total Credit:</strong> Rs ${Math.abs(totalSubAmount)}</p>
210
+ <p><strong>Final Balance:</strong> Rs ${Math.abs(totalBalance)}</p>
211
+ </div>
212
+
213
+ <!-- Generated Date/Time -->
214
+ <div class="report-generated">
215
+ Report generated on: ${new Date().toLocaleString()}
216
+ </div>
217
+ </div>
218
+ </body>
219
+
220
+ </html>
221
+ `;
222
+ return htmlContent;
223
+ };
224
+ export const allTransactionsBanksTemplate = (data, StartDate, EndDate, netBalance, totalAmount, totalSubAmount, totalBalance, type) => {
225
+ const generateTableRows = () => {
226
+ return data?.map((item, index) => `<tr>
227
+ <td>${index + 1}</td>
228
+ <td>${formatMyDate(item?.date)}</td>
229
+ <td>
230
+ <p>
231
+ ${item?.client_name}<br />
232
+ ${item?.client_phone}
233
+ </p>
234
+ </td>
235
+ <td class="debit-cell">Rs ${item?.amount}</td>
236
+ <td class="credit-cell">Rs ${item?.subamount}</td>
237
+ <td style="color:${item?.balance < 0 ? "red" : "green"} ;">Rs ${Math.abs(item?.balance)}</td>
238
+ </tr>
239
+ `).join('');
240
+ };
241
+ const htmlContent = `
242
+ <html>
243
+
244
+ <head>
245
+ <style>
246
+ @page {
247
+ margin-bottom: 80px;
248
+ }
249
+
250
+ body {
251
+ font-family: Arial, sans-serif;
252
+ margin: 0;
253
+ padding: 0;
254
+ }
255
+
256
+ .header {
257
+ background-color: #FF5F00;
258
+ color: white;
259
+ text-align: center;
260
+ padding: 2px 0;
261
+ font-size: 20px;
262
+ font-weight: bold;
263
+ }
264
+
265
+ .footer {
266
+ background-color: orange;
267
+ color: white;
268
+ text-align: center;
269
+ padding: 5px 0;
270
+ position: fixed;
271
+ bottom: 0;
272
+ width: 100%;
273
+ height: 60px;
274
+ }
275
+
276
+ .content {
277
+ padding-bottom: 100px;
278
+ }
279
+
280
+ .logo {
281
+ width: 130px;
282
+ height: auto;
283
+ }
284
+
285
+ .top {
286
+ width: 100%;
287
+ text-align: center;
288
+ }
289
+
290
+ .summary-box {
291
+ width: 90%;
292
+ margin: 15px auto;
293
+ display: flex;
294
+ justify-content: space-between;
295
+ border: 1px solid #ccc;
296
+ padding: 10px;
297
+ border-radius: 5px;
298
+ }
299
+
300
+ .summary-item {
301
+ width: 32%;
302
+ background-color: #f9f9f9;
303
+ text-align: center;
304
+ padding: 10px;
305
+ border-radius: 5px;
306
+ }
307
+
308
+ .summary-item h4 {
309
+ margin: 0;
310
+ font-size: 14px;
311
+ }
312
+
313
+ .summary-item p {
314
+ margin: 5px 0 0 0;
315
+ font-size: 16px;
316
+ font-weight: bold;
317
+ }
318
+
319
+ table {
320
+ width: 100%;
321
+ border-collapse: collapse;
322
+ margin-top: 20px;
323
+ }
324
+
325
+ th,
326
+ td {
327
+ border: 1px solid #000;
328
+ padding: 8px;
329
+ text-align: center;
330
+ font-size: 12px;
331
+ }
332
+
333
+ th {
334
+ background-color: #f2f2f2;
335
+ }
336
+
337
+ .debit-cell {
338
+ background-color: #f8d7da;
339
+ /* light red */
340
+ }
341
+
342
+ .credit-cell {
343
+ background-color: #d4edda;
344
+ /* light green */
345
+ }
346
+
347
+ thead {
348
+ display: table-header-group;
349
+ }
350
+
351
+ tfoot {
352
+ display: table-footer-group;
353
+ }
354
+
355
+ tr {
356
+ page-break-inside: avoid;
357
+ }
358
+
359
+ .totals {
360
+ width: 90%;
361
+ margin: 20px auto;
362
+ text-align: center;
363
+ border: 1px solid #ccc;
364
+ padding: 10px;
365
+ border-radius: 5px;
366
+ background: #f9f9f9;
367
+ }
368
+
369
+ .report-generated {
370
+ width: 90%;
371
+ margin: 5px auto;
372
+ text-align: right;
373
+ font-size: 10px;
374
+ color: #555;
375
+ }
376
+ .title {
377
+ color: white;
378
+ font-size: 25px
379
+ }
380
+ </style>
381
+ </head>
382
+
383
+ <body>
384
+ <div class="header">
385
+ <p class="title">DigiKhata</p>
386
+ </div>
387
+
388
+ <div class="content">
389
+ <div class="top">
390
+ <h3>Bank Statement</h3>
391
+ <p>
392
+ ${StartDate === "" && EndDate === "" ? "All Transactions" : `${new Date(StartDate).toDateString()} - ${new Date(EndDate).toDateString()}`}
393
+ </p>
394
+ </div>
395
+
396
+ <!-- Summary Box -->
397
+ <div class="summary-box">
398
+ <div class="summary-item">
399
+ <h4>Net Balance</h4>
400
+ <p style="color: ${type == "receivable" ? "green" : "red"};">Rs ${Math.abs(netBalance)}</p>
401
+ </div>
402
+ <div class="summary-item">
403
+ <h4>Total Debit</h4>
404
+ <p style="color: red">Rs ${Math.abs(totalAmount)}</p>
405
+ </div>
406
+ <div class="summary-item">
407
+ <h4>Total Credit</h4>
408
+ <p style="color: green">Rs ${Math.abs(totalSubAmount)}</p>
409
+ </div>
410
+ </div>
411
+
412
+ <!-- Table -->
413
+ <table style="width:90%; margin: 0 auto;">
414
+ <thead>
415
+ <tr>
416
+ <th>Sr #</th>
417
+ <th>Date</th>
418
+ <th>Bank</th>
419
+ <th>Debit</th>
420
+ <th>Credit</th>
421
+ <th>Balance</th>
422
+ </tr>
423
+ </thead>
424
+ <tbody>
425
+ ${generateTableRows()}
426
+ </tbody>
427
+ </table>
428
+
429
+ <!-- Totals Section -->
430
+ <div class="totals">
431
+ <p><strong>Grand Total Debit:</strong> Rs ${Math.abs(totalAmount)}</p>
432
+ <p><strong>Grand Total Credit:</strong> Rs ${Math.abs(totalSubAmount)}</p>
433
+ <p><strong>Final Balance:</strong> Rs ${Math.abs(totalBalance)}</p>
434
+ </div>
435
+
436
+ <!-- Generated Date/Time -->
437
+ <div class="report-generated">
438
+ Report generated on: ${new Date().toLocaleString()}
439
+ </div>
440
+ </div>
441
+ </body>
442
+
443
+ </html>
444
+ `;
445
+ return htmlContent;
446
+ };
447
+ export const allCustomersTemplate = (data, youGet, youGive) => {
448
+ const generateTableRows = () => {
449
+ return data?.map((item, index) => `<tr>
450
+ <td>${index + 1}</td>
451
+ <td>${item?.name}</td>
452
+ <td>${item?.phone || ""}</td>
453
+
454
+ <td class="debit-cell">${item?.pay_type == "receivable" ? item?.amount : ""}</td>
455
+ <td class="credit-cell">${item?.pay_type == "payable" ? item?.amount : ""}</td>
456
+
457
+ <td>${item?.paydate ? formatMyDate(item?.paydate) : ""}</td>
458
+ </tr>
459
+ `).join('');
460
+ };
461
+ const htmlContent = `
462
+ <html>
463
+
464
+ <head>
465
+ <style>
466
+ @page {
467
+ margin-bottom: 80px;
468
+ }
469
+
470
+ body {
471
+ font-family: Arial, sans-serif;
472
+ margin: 0;
473
+ padding: 0;
474
+ }
475
+
476
+ .header {
477
+ background-color: #FF5F00;
478
+ color: white;
479
+ text-align: center;
480
+ padding: 2px 0;
481
+ font-size: 20px;
482
+ font-weight: bold;
483
+ }
484
+
485
+ .footer {
486
+ background-color: orange;
487
+ color: white;
488
+ text-align: center;
489
+ padding: 5px 0;
490
+ position: fixed;
491
+ bottom: 0;
492
+ width: 100%;
493
+ height: 60px;
494
+ }
495
+
496
+ .content {
497
+ padding-bottom: 100px;
498
+ }
499
+
500
+ .logo {
501
+ width: 130px;
502
+ height: auto;
503
+ }
504
+
505
+ .top {
506
+ width: 100%;
507
+ text-align: center;
508
+ }
509
+
510
+ .summary-box {
511
+ width: 90%;
512
+ margin: 15px auto;
513
+ display: flex;
514
+ justify-content: space-between;
515
+ border: 1px solid #ccc;
516
+ padding: 10px;
517
+ border-radius: 5px;
518
+ }
519
+
520
+ .summary-item {
521
+ width: 32%;
522
+ background-color: #f9f9f9;
523
+ text-align: center;
524
+ padding: 10px;
525
+ border-radius: 5px;
526
+ }
527
+
528
+ .summary-item h4 {
529
+ margin: 0;
530
+ font-size: 14px;
531
+ }
532
+
533
+ .summary-item p {
534
+ margin: 5px 0 0 0;
535
+ font-size: 16px;
536
+ font-weight: bold;
537
+ }
538
+
539
+ table {
540
+ width: 100%;
541
+ border-collapse: collapse;
542
+ margin-top: 20px;
543
+ }
544
+
545
+ th,
546
+ td {
547
+ border: 1px solid #000;
548
+ padding: 8px;
549
+ text-align: center;
550
+ font-size: 12px;
551
+ }
552
+
553
+ th {
554
+ background-color: #f2f2f2;
555
+ }
556
+
557
+ .debit-cell {
558
+ background-color: #f8d7da;
559
+ /* light red */
560
+ }
561
+
562
+ .credit-cell {
563
+ background-color: #d4edda;
564
+ /* light green */
565
+ }
566
+
567
+ thead {
568
+ display: table-header-group;
569
+ }
570
+
571
+ tfoot {
572
+ display: table-footer-group;
573
+ }
574
+
575
+ tr {
576
+ page-break-inside: avoid;
577
+ }
578
+
579
+ .totals {
580
+ width: 90%;
581
+ margin: 20px auto;
582
+ text-align: center;
583
+ border: 1px solid #ccc;
584
+ padding: 10px;
585
+ border-radius: 5px;
586
+ background: #f9f9f9;
587
+ }
588
+
589
+ .report-generated {
590
+ width: 90%;
591
+ margin: 5px auto;
592
+ text-align: right;
593
+ font-size: 10px;
594
+ color: #555;
595
+ }
596
+ .title {
597
+ color: white;
598
+ font-size: 25px
599
+ }
600
+ </style>
601
+ </head>
602
+
603
+ <body>
604
+ <div class="header">
605
+ <p class="title">DigiKhata</p>
606
+ </div>
607
+
608
+ <div class="content">
609
+ <div class="top">
610
+ <h3>Account Statement</h3>
611
+ </div>
612
+
613
+ <!-- Summary Box -->
614
+ <div class="summary-box">
615
+ <div class="summary-item">
616
+ <h4>You'll Get</h4>
617
+ <p style="color: red;">Rs ${Math.abs(youGet)}</p>
618
+ </div>
619
+ <div class="summary-item">
620
+ <h4>You'll Give</h4>
621
+ <p style="color: green">Rs ${Math.abs(youGive)}</p>
622
+ </div>
623
+ <div class="summary-item">
624
+ <h4>Net Balance</h4>
625
+ <p style="color: black">Rs ${Math.abs(youGet - youGive)}</p>
626
+ </div>
627
+ </div>
628
+
629
+ <!-- Table -->
630
+ <table style="width:90%; margin: 0 auto;">
631
+ <thead>
632
+ <tr>
633
+ <th>Sr #</th>
634
+ <th>Customer</th>
635
+ <th>Phone</th>
636
+ <th>You'll Get</th>
637
+ <th>You'll Give</th>
638
+ <th>Collection Date</th>
639
+ </tr>
640
+ </thead>
641
+ <tbody>
642
+ ${generateTableRows()}
643
+ </tbody>
644
+ </table>
645
+
646
+ <!-- Totals Section -->
647
+ <div class="totals">
648
+ <p><strong>Total You'll Get:</strong> Rs ${Math.abs(youGet)}</p>
649
+ <p><strong>Total You'll Give:</strong> Rs ${Math.abs(youGive)}</p>
650
+
651
+ </div>
652
+
653
+ <!-- Generated Date/Time -->
654
+ <div class="report-generated">
655
+ Report generated on: ${new Date().toLocaleString()}
656
+ </div>
657
+ </div>
658
+ </body>
659
+
660
+ </html>
661
+ `;
662
+ return htmlContent;
663
+ };
664
+ export const allSuppliersTemplate = (data, youGet, youGive) => {
665
+ const generateTableRows = () => {
666
+ return data?.map((item, index) => `<tr>
667
+ <td>${index + 1}</td>
668
+ <td>${item?.name}</td>
669
+ <td>${item?.phone || ""}</td>
670
+
671
+ <td class="debit-cell">${item?.pay_type == "receivable" ? item?.amount : ""}</td>
672
+ <td class="credit-cell">${item?.pay_type == "payable" ? item?.amount : ""}</td>
673
+
674
+ </tr>
675
+ `).join('');
676
+ };
677
+ const htmlContent = `
678
+ <html>
679
+
680
+ <head>
681
+ <style>
682
+ @page {
683
+ margin-bottom: 80px;
684
+ }
685
+
686
+ body {
687
+ font-family: Arial, sans-serif;
688
+ margin: 0;
689
+ padding: 0;
690
+ }
691
+
692
+ .header {
693
+ background-color: #FF5F00;
694
+ color: white;
695
+ text-align: center;
696
+ padding: 2px 0;
697
+ font-size: 20px;
698
+ font-weight: bold;
699
+ }
700
+
701
+ .footer {
702
+ background-color: orange;
703
+ color: white;
704
+ text-align: center;
705
+ padding: 5px 0;
706
+ position: fixed;
707
+ bottom: 0;
708
+ width: 100%;
709
+ height: 60px;
710
+ }
711
+
712
+ .content {
713
+ padding-bottom: 100px;
714
+ }
715
+
716
+ .logo {
717
+ width: 130px;
718
+ height: auto;
719
+ }
720
+
721
+ .top {
722
+ width: 100%;
723
+ text-align: center;
724
+ }
725
+
726
+ .summary-box {
727
+ width: 90%;
728
+ margin: 15px auto;
729
+ display: flex;
730
+ justify-content: space-between;
731
+ border: 1px solid #ccc;
732
+ padding: 10px;
733
+ border-radius: 5px;
734
+ }
735
+
736
+ .summary-item {
737
+ width: 32%;
738
+ background-color: #f9f9f9;
739
+ text-align: center;
740
+ padding: 10px;
741
+ border-radius: 5px;
742
+ }
743
+
744
+ .summary-item h4 {
745
+ margin: 0;
746
+ font-size: 14px;
747
+ }
748
+
749
+ .summary-item p {
750
+ margin: 5px 0 0 0;
751
+ font-size: 16px;
752
+ font-weight: bold;
753
+ }
754
+
755
+ table {
756
+ width: 100%;
757
+ border-collapse: collapse;
758
+ margin-top: 20px;
759
+ }
760
+
761
+ th,
762
+ td {
763
+ border: 1px solid #000;
764
+ padding: 8px;
765
+ text-align: center;
766
+ font-size: 12px;
767
+ }
768
+
769
+ th {
770
+ background-color: #f2f2f2;
771
+ }
772
+
773
+ .debit-cell {
774
+ background-color: #f8d7da;
775
+ /* light red */
776
+ }
777
+
778
+ .credit-cell {
779
+ background-color: #d4edda;
780
+ /* light green */
781
+ }
782
+
783
+ thead {
784
+ display: table-header-group;
785
+ }
786
+
787
+ tfoot {
788
+ display: table-footer-group;
789
+ }
790
+
791
+ tr {
792
+ page-break-inside: avoid;
793
+ }
794
+
795
+ .totals {
796
+ width: 90%;
797
+ margin: 20px auto;
798
+ text-align: center;
799
+ border: 1px solid #ccc;
800
+ padding: 10px;
801
+ border-radius: 5px;
802
+ background: #f9f9f9;
803
+ }
804
+
805
+ .report-generated {
806
+ width: 90%;
807
+ margin: 5px auto;
808
+ text-align: right;
809
+ font-size: 10px;
810
+ color: #555;
811
+ }
812
+ .title {
813
+ color: white;
814
+ font-size: 25px
815
+ }
816
+ </style>
817
+ </head>
818
+
819
+ <body>
820
+ <div class="header">
821
+ <p class="title">DigiKhata</p>
822
+ </div>
823
+
824
+ <div class="content">
825
+ <div class="top">
826
+ <h3>Account Statement</h3>
827
+ </div>
828
+
829
+ <!-- Summary Box -->
830
+ <div class="summary-box">
831
+ <div class="summary-item">
832
+ <h4>Total Advance</h4>
833
+ <p style="color: red;">Rs ${Math.abs(youGet)}</p>
834
+ </div>
835
+ <div class="summary-item">
836
+ <h4>You'll Give</h4>
837
+ <p style="color: green">Rs ${Math.abs(youGive)}</p>
838
+ </div>
839
+ <div class="summary-item">
840
+ <h4>Net Balance</h4>
841
+ <p style="color: black">Rs ${Math.abs(youGet - youGive)}</p>
842
+ </div>
843
+ </div>
844
+
845
+ <!-- Table -->
846
+ <table style="width:90%; margin: 0 auto;">
847
+ <thead>
848
+ <tr>
849
+ <th>Sr #</th>
850
+ <th>Customer</th>
851
+ <th>Phone</th>
852
+ <th>Advance</th>
853
+ <th>You'll Give</th>
854
+ </tr>
855
+ </thead>
856
+ <tbody>
857
+ ${generateTableRows()}
858
+ </tbody>
859
+ </table>
860
+
861
+ <!-- Totals Section -->
862
+ <div class="totals">
863
+ <p><strong>Total You'll Get:</strong> Rs ${Math.abs(youGet)}</p>
864
+ <p><strong>Total You'll Give:</strong> Rs ${Math.abs(youGive)}</p>
865
+
866
+ </div>
867
+
868
+ <!-- Generated Date/Time -->
869
+ <div class="report-generated">
870
+ Report generated on: ${new Date().toLocaleString()}
871
+ </div>
872
+ </div>
873
+ </body>
874
+
875
+ </html>
876
+ `;
877
+ return htmlContent;
878
+ };
879
+ export const allBanksTemplate = (data, youGet, youGive) => {
880
+ const generateTableRows = () => {
881
+ return data?.map((item, index) => `<tr>
882
+ <td>${index + 1}</td>
883
+ <td>${item?.name}</td>
884
+ <td>${item?.phone || ""}</td>
885
+
886
+ <td class="credit-cell">${item?.pay_type == "payable" ? item?.amount : ""}</td>
887
+ <td class="debit-cell">${item?.pay_type == "receivable" ? item?.amount : ""}</td>
888
+ </tr>
889
+ `).join('');
890
+ };
891
+ const htmlContent = `
892
+ <html>
893
+
894
+ <head>
895
+ <style>
896
+ @page {
897
+ margin-bottom: 80px;
898
+ }
899
+
900
+ body {
901
+ font-family: Arial, sans-serif;
902
+ margin: 0;
903
+ padding: 0;
904
+ }
905
+
906
+ .header {
907
+ background-color: #FF5F00;
908
+ color: white;
909
+ text-align: center;
910
+ padding: 2px 0;
911
+ font-size: 20px;
912
+ font-weight: bold;
913
+ }
914
+
915
+ .footer {
916
+ background-color: orange;
917
+ color: white;
918
+ text-align: center;
919
+ padding: 5px 0;
920
+ position: fixed;
921
+ bottom: 0;
922
+ width: 100%;
923
+ height: 60px;
924
+ }
925
+
926
+ .content {
927
+ padding-bottom: 100px;
928
+ }
929
+
930
+ .logo {
931
+ width: 130px;
932
+ height: auto;
933
+ }
934
+
935
+ .top {
936
+ width: 100%;
937
+ text-align: center;
938
+ }
939
+
940
+ .summary-box {
941
+ width: 90%;
942
+ margin: 15px auto;
943
+ display: flex;
944
+ justify-content: space-between;
945
+ border: 1px solid #ccc;
946
+ padding: 10px;
947
+ border-radius: 5px;
948
+ }
949
+
950
+ .summary-item {
951
+ width: 32%;
952
+ background-color: #f9f9f9;
953
+ text-align: center;
954
+ padding: 10px;
955
+ border-radius: 5px;
956
+ }
957
+
958
+ .summary-item h4 {
959
+ margin: 0;
960
+ font-size: 14px;
961
+ }
962
+
963
+ .summary-item p {
964
+ margin: 5px 0 0 0;
965
+ font-size: 16px;
966
+ font-weight: bold;
967
+ }
968
+
969
+ table {
970
+ width: 100%;
971
+ border-collapse: collapse;
972
+ margin-top: 20px;
973
+ }
974
+
975
+ th,
976
+ td {
977
+ border: 1px solid #000;
978
+ padding: 8px;
979
+ text-align: center;
980
+ font-size: 12px;
981
+ }
982
+
983
+ th {
984
+ background-color: #f2f2f2;
985
+ }
986
+
987
+ .debit-cell {
988
+ background-color: #f8d7da;
989
+ /* light red */
990
+ }
991
+
992
+ .credit-cell {
993
+ background-color: #d4edda;
994
+ /* light green */
995
+ }
996
+
997
+ thead {
998
+ display: table-header-group;
999
+ }
1000
+
1001
+ tfoot {
1002
+ display: table-footer-group;
1003
+ }
1004
+
1005
+ tr {
1006
+ page-break-inside: avoid;
1007
+ }
1008
+
1009
+ .totals {
1010
+ width: 90%;
1011
+ margin: 20px auto;
1012
+ text-align: center;
1013
+ border: 1px solid #ccc;
1014
+ padding: 10px;
1015
+ border-radius: 5px;
1016
+ background: #f9f9f9;
1017
+ }
1018
+
1019
+ .report-generated {
1020
+ width: 90%;
1021
+ margin: 5px auto;
1022
+ text-align: right;
1023
+ font-size: 10px;
1024
+ color: #555;
1025
+ }
1026
+ .title {
1027
+ color: white;
1028
+ font-size: 25px
1029
+ }
1030
+ </style>
1031
+ </head>
1032
+
1033
+ <body>
1034
+ <div class="header">
1035
+ <p class="title">DigiKhata</p>
1036
+ </div>
1037
+
1038
+ <div class="content">
1039
+ <div class="top">
1040
+ <h3>Account Statement</h3>
1041
+ </div>
1042
+
1043
+ <!-- Summary Box -->
1044
+ <div class="summary-box">
1045
+ <div class="summary-item">
1046
+ <h4>Total Credit</h4>
1047
+ <p style="color: green">Rs ${Math.abs(youGive)}</p>
1048
+ </div>
1049
+ <div class="summary-item">
1050
+ <h4>Total Debit</h4>
1051
+ <p style="color: red;">Rs ${Math.abs(youGet)}</p>
1052
+ </div>
1053
+ <div class="summary-item">
1054
+ <h4>Bank Balance</h4>
1055
+ <p style="color: black">Rs ${Math.abs(youGet - youGive)}</p>
1056
+ </div>
1057
+ </div>
1058
+
1059
+ <!-- Table -->
1060
+ <table style="width:90%; margin: 0 auto;">
1061
+ <thead>
1062
+ <tr>
1063
+ <th>Sr #</th>
1064
+ <th>Bank</th>
1065
+ <th>Details</th>
1066
+ <th>Credit</th>
1067
+ <th>Debit</th>
1068
+ </tr>
1069
+ </thead>
1070
+ <tbody>
1071
+ ${generateTableRows()}
1072
+ </tbody>
1073
+ </table>
1074
+
1075
+ <!-- Totals Section -->
1076
+ <div class="totals">
1077
+ <p><strong>Total Debit:</strong> Rs ${Math.abs(youGet)}</p>
1078
+ <p><strong>Total Credit:</strong> Rs ${Math.abs(youGive)}</p>
1079
+
1080
+ </div>
1081
+
1082
+ <!-- Generated Date/Time -->
1083
+ <div class="report-generated">
1084
+ Report generated on: ${new Date().toLocaleString()}
1085
+ </div>
1086
+ </div>
1087
+ </body>
1088
+
1089
+ </html>
1090
+ `;
1091
+ return htmlContent;
1092
+ };
1093
+ export const cashMainTemplate = (data, totalCashIN, totalCashOUT, date) => {
1094
+ const diff = totalCashIN - totalCashOUT;
1095
+ const generateTableRows = () => {
1096
+ return data?.map((item, index) => `<tr>
1097
+ <td>${index + 1}</td>
1098
+ <td>${formatTime(item?.entryDate)}</td>
1099
+
1100
+ <td class="credit-cell">${item?.cashIN ? addCommas(item?.cashIN) : ""}</td>
1101
+ <td class="debit-cell">${item?.cashOUT ? addCommas(item?.cashOUT) : ""}</td>
1102
+
1103
+ <td style="color: ${(item?.cashInHand ?? 0) >= 0 ? 'green' : 'red'}">
1104
+ ${addCommas(Math.abs(item?.cashInHand ?? 0))}
1105
+ </td>
1106
+
1107
+ </tr>
1108
+ `).join('');
1109
+ };
1110
+ const htmlContent = `
1111
+ <html>
1112
+
1113
+ <head>
1114
+ <style>
1115
+ @page {
1116
+ margin-bottom: 80px;
1117
+ }
1118
+
1119
+ body {
1120
+ font-family: Arial, sans-serif;
1121
+ margin: 0;
1122
+ padding: 0;
1123
+ }
1124
+
1125
+ .header {
1126
+ background-color: #FF5F00;
1127
+ color: white;
1128
+ text-align: center;
1129
+ padding: 2px 0;
1130
+ font-size: 20px;
1131
+ font-weight: bold;
1132
+ }
1133
+
1134
+ .footer {
1135
+ background-color: orange;
1136
+ color: white;
1137
+ text-align: center;
1138
+ padding: 5px 0;
1139
+ position: fixed;
1140
+ bottom: 0;
1141
+ width: 100%;
1142
+ height: 60px;
1143
+ }
1144
+
1145
+ .content {
1146
+ padding-bottom: 100px;
1147
+ }
1148
+
1149
+ .logo {
1150
+ width: 130px;
1151
+ height: auto;
1152
+ }
1153
+
1154
+ .top {
1155
+ width: 100%;
1156
+ text-align: center;
1157
+ }
1158
+
1159
+ .summary-box {
1160
+ width: 90%;
1161
+ margin: 15px auto;
1162
+ display: flex;
1163
+ justify-content: space-between;
1164
+ border: 1px solid #ccc;
1165
+ padding: 10px;
1166
+ border-radius: 5px;
1167
+ }
1168
+
1169
+ .summary-item {
1170
+ width: 32%;
1171
+ background-color: #f9f9f9;
1172
+ text-align: center;
1173
+ padding: 10px;
1174
+ border-radius: 5px;
1175
+ }
1176
+
1177
+ .summary-item h4 {
1178
+ margin: 0;
1179
+ font-size: 14px;
1180
+ }
1181
+
1182
+ .summary-item p {
1183
+ margin: 5px 0 0 0;
1184
+ font-size: 16px;
1185
+ font-weight: bold;
1186
+ }
1187
+
1188
+ table {
1189
+ width: 100%;
1190
+ border-collapse: collapse;
1191
+ margin-top: 20px;
1192
+ }
1193
+
1194
+ th,
1195
+ td {
1196
+ border: 1px solid #000;
1197
+ padding: 8px;
1198
+ text-align: center;
1199
+ font-size: 12px;
1200
+ }
1201
+
1202
+ th {
1203
+ background-color: #f2f2f2;
1204
+ }
1205
+
1206
+ .debit-cell {
1207
+ background-color: #f8d7da;
1208
+ /* light red */
1209
+ }
1210
+
1211
+ .credit-cell {
1212
+ background-color: #d4edda;
1213
+ /* light green */
1214
+ }
1215
+
1216
+ thead {
1217
+ display: table-header-group;
1218
+ }
1219
+
1220
+ tfoot {
1221
+ display: table-footer-group;
1222
+ }
1223
+
1224
+ tr {
1225
+ page-break-inside: avoid;
1226
+ }
1227
+
1228
+ .totals {
1229
+ width: 90%;
1230
+ margin: 20px auto;
1231
+ text-align: center;
1232
+ border: 1px solid #ccc;
1233
+ padding: 10px;
1234
+ border-radius: 5px;
1235
+ background: #f9f9f9;
1236
+ }
1237
+
1238
+ .report-generated {
1239
+ width: 90%;
1240
+ margin: 5px auto;
1241
+ text-align: right;
1242
+ font-size: 10px;
1243
+ color: #555;
1244
+ }
1245
+ .title {
1246
+ color: white;
1247
+ font-size: 25px
1248
+ }
1249
+ </style>
1250
+ </head>
1251
+
1252
+ <body>
1253
+ <div class="header">
1254
+ <p class="title">DigiKhata</p>
1255
+ </div>
1256
+
1257
+ <div class="content">
1258
+ <div class="top">
1259
+ <h3>Cashbook Statement</h3>
1260
+ <p style="color: black;">${date}</p>
1261
+ </div>
1262
+
1263
+ <!-- Summary Box -->
1264
+ <div class="summary-box">
1265
+ <div class="summary-item">
1266
+ <h4>Cash IN</h4>
1267
+ <p style="color: green">Rs ${addCommas(totalCashIN)}</p>
1268
+ </div>
1269
+ <div class="summary-item">
1270
+ <h4>Cash OUT</h4>
1271
+ <p style="color: red;">Rs ${addCommas(totalCashOUT)}</p>
1272
+ </div>
1273
+ <div class="summary-item">
1274
+ <h4>Net Balance</h4>
1275
+ <p style="color: ${diff >= 0 ? 'green' : 'red'}">
1276
+ Rs ${addCommas(Math.abs(diff))}
1277
+ </p>
1278
+ </div>
1279
+ </div>
1280
+
1281
+ <!-- Table -->
1282
+ <table style="width:90%; margin: 0 auto;">
1283
+ <thead>
1284
+ <tr>
1285
+ <th>Sr #</th>
1286
+ <th>Time</th>
1287
+ <th>Total IN</th>
1288
+ <th>Total OUT</th>
1289
+ <th>Cash in Hand</th>
1290
+ </tr>
1291
+ </thead>
1292
+ <tbody>
1293
+ ${generateTableRows()}
1294
+ </tbody>
1295
+ </table>
1296
+
1297
+ <!-- Totals Section -->
1298
+ <div class="totals">
1299
+ <p><strong>Total IN:</strong> Rs ${addCommas(totalCashIN)}</p>
1300
+ <p><strong>Total OUT:</strong> Rs ${addCommas(totalCashOUT)}</p>
1301
+
1302
+ </div>
1303
+
1304
+ <!-- Generated Date/Time -->
1305
+ <div class="report-generated">
1306
+ Report generated on: ${new Date().toLocaleString()}
1307
+ </div>
1308
+ </div>
1309
+ </body>
1310
+
1311
+ </html>
1312
+ `;
1313
+ return htmlContent;
1314
+ };
1315
+ export const dailyReportTemplate = (data, totalCashIN, totalCashOUT, date) => {
1316
+ const diff = totalCashIN - totalCashOUT;
1317
+ const generateTableRows = () => {
1318
+ return data?.map((item, index) => `<tr>
1319
+ <td>${index + 1}</td>
1320
+ <td>
1321
+ ${formatMyDate(fromJsDateToSql(new Date(item?.date)))} - ${item?.entryCount} Entries
1322
+ </td>
1323
+
1324
+ <td class="credit-cell">${item?.totalCashIN ? addCommas(item?.totalCashIN) : ""}</td>
1325
+ <td class="debit-cell">${item?.totalCashOUT ? addCommas(item?.totalCashOUT) : ""}</td>
1326
+
1327
+ <td style="color: ${(item?.dailyBalance ?? 0) >= 0 ? 'green' : 'red'}">
1328
+ ${addCommas(Math.abs(item?.dailyBalance ?? 0))}
1329
+ </td>
1330
+
1331
+ <td style="color: ${(item?.cashInHand ?? 0) >= 0 ? 'green' : 'red'}">
1332
+ ${addCommas(Math.abs(item?.cashInHand ?? 0))}
1333
+ </td>
1334
+
1335
+ </tr>
1336
+ `).join('');
1337
+ };
1338
+ const htmlContent = `
1339
+ <html>
1340
+
1341
+ <head>
1342
+ <style>
1343
+ @page {
1344
+ margin-bottom: 80px;
1345
+ }
1346
+
1347
+ body {
1348
+ font-family: Arial, sans-serif;
1349
+ margin: 0;
1350
+ padding: 0;
1351
+ }
1352
+
1353
+ .header {
1354
+ background-color: #FF5F00;
1355
+ color: white;
1356
+ text-align: center;
1357
+ padding: 2px 0;
1358
+ font-size: 20px;
1359
+ font-weight: bold;
1360
+ }
1361
+
1362
+ .footer {
1363
+ background-color: orange;
1364
+ color: white;
1365
+ text-align: center;
1366
+ padding: 5px 0;
1367
+ position: fixed;
1368
+ bottom: 0;
1369
+ width: 100%;
1370
+ height: 60px;
1371
+ }
1372
+
1373
+ .content {
1374
+ padding-bottom: 100px;
1375
+ }
1376
+
1377
+ .logo {
1378
+ width: 130px;
1379
+ height: auto;
1380
+ }
1381
+
1382
+ .top {
1383
+ width: 100%;
1384
+ text-align: center;
1385
+ }
1386
+
1387
+ .summary-box {
1388
+ width: 90%;
1389
+ margin: 15px auto;
1390
+ display: flex;
1391
+ justify-content: space-between;
1392
+ border: 1px solid #ccc;
1393
+ padding: 10px;
1394
+ border-radius: 5px;
1395
+ }
1396
+
1397
+ .summary-item {
1398
+ width: 32%;
1399
+ background-color: #f9f9f9;
1400
+ text-align: center;
1401
+ padding: 10px;
1402
+ border-radius: 5px;
1403
+ }
1404
+
1405
+ .summary-item h4 {
1406
+ margin: 0;
1407
+ font-size: 14px;
1408
+ }
1409
+
1410
+ .summary-item p {
1411
+ margin: 5px 0 0 0;
1412
+ font-size: 16px;
1413
+ font-weight: bold;
1414
+ }
1415
+
1416
+ table {
1417
+ width: 100%;
1418
+ border-collapse: collapse;
1419
+ margin-top: 20px;
1420
+ }
1421
+
1422
+ th,
1423
+ td {
1424
+ border: 1px solid #000;
1425
+ padding: 8px;
1426
+ text-align: center;
1427
+ font-size: 12px;
1428
+ }
1429
+
1430
+ th {
1431
+ background-color: #f2f2f2;
1432
+ }
1433
+
1434
+ .debit-cell {
1435
+ background-color: #f8d7da;
1436
+ /* light red */
1437
+ }
1438
+
1439
+ .credit-cell {
1440
+ background-color: #d4edda;
1441
+ /* light green */
1442
+ }
1443
+
1444
+ thead {
1445
+ display: table-header-group;
1446
+ }
1447
+
1448
+ tfoot {
1449
+ display: table-footer-group;
1450
+ }
1451
+
1452
+ tr {
1453
+ page-break-inside: avoid;
1454
+ }
1455
+
1456
+ .totals {
1457
+ width: 90%;
1458
+ margin: 20px auto;
1459
+ text-align: center;
1460
+ border: 1px solid #ccc;
1461
+ padding: 10px;
1462
+ border-radius: 5px;
1463
+ background: #f9f9f9;
1464
+ }
1465
+
1466
+ .report-generated {
1467
+ width: 90%;
1468
+ margin: 5px auto;
1469
+ text-align: right;
1470
+ font-size: 10px;
1471
+ color: #555;
1472
+ }
1473
+ .title {
1474
+ color: white;
1475
+ font-size: 25px
1476
+ }
1477
+ </style>
1478
+ </head>
1479
+
1480
+ <body>
1481
+ <div class="header">
1482
+ <p class="title">DigiKhata</p>
1483
+ </div>
1484
+
1485
+ <div class="content">
1486
+ <div class="top">
1487
+ <h3>Cashbook Statement</h3>
1488
+ </div>
1489
+
1490
+ <!-- Summary Box -->
1491
+ <div class="summary-box">
1492
+ <div class="summary-item">
1493
+ <h4>Cash IN</h4>
1494
+ <p style="color: green">Rs ${addCommas(totalCashIN)}</p>
1495
+ </div>
1496
+ <div class="summary-item">
1497
+ <h4>Cash OUT</h4>
1498
+ <p style="color: red;">Rs ${addCommas(totalCashOUT)}</p>
1499
+ </div>
1500
+ <div class="summary-item">
1501
+ <h4>Net Balance</h4>
1502
+ <p style="color: ${diff >= 0 ? 'green' : 'red'}">
1503
+ Rs ${addCommas(Math.abs(diff))}
1504
+ </p>
1505
+ </div>
1506
+ </div>
1507
+
1508
+ <!-- Table -->
1509
+ <table style="width:90%; margin: 0 auto;">
1510
+ <thead>
1511
+ <tr>
1512
+ <th>Sr #</th>
1513
+ <th>Date</th>
1514
+ <th>Total IN</th>
1515
+ <th>Total OUT</th>
1516
+ <th>Daily Balance</th>
1517
+ <th>Cash in Hand</th>
1518
+ </tr>
1519
+ </thead>
1520
+ <tbody>
1521
+ ${generateTableRows()}
1522
+ </tbody>
1523
+ </table>
1524
+
1525
+ <!-- Totals Section -->
1526
+ <div class="totals">
1527
+ <p><strong>Total IN:</strong> Rs ${addCommas(totalCashIN)}</p>
1528
+ <p><strong>Total OUT:</strong> Rs ${addCommas(totalCashOUT)}</p>
1529
+
1530
+ </div>
1531
+
1532
+ <!-- Generated Date/Time -->
1533
+ <div class="report-generated">
1534
+ Report generated on: ${new Date().toLocaleString()}
1535
+ </div>
1536
+ </div>
1537
+ </body>
1538
+
1539
+ </html>
1540
+ `;
1541
+ return htmlContent;
1542
+ };
1543
+ export const detailedReportTemplate = (data, totalCashIN, totalCashOUT, date) => {
1544
+ const diff = totalCashIN - totalCashOUT;
1545
+ const generateTableRows = () => {
1546
+ return data?.map((item, index) => {
1547
+ // ✅ Main date summary row
1548
+ let mainRow = `
1549
+ <tr style="background-color: #f2f2f2; font-weight: bold;">
1550
+ <td>${index + 1}</td>
1551
+ <td>
1552
+ ${formatMyDate(fromJsDateToSql(new Date(item?.date)))} - ${item?.entryCount} Entries
1553
+ </td>
1554
+ <td class="credit-cell">${item?.totalCashIN ? addCommas(item?.totalCashIN) : ""}</td>
1555
+ <td class="debit-cell">${item?.totalCashOUT ? addCommas(item?.totalCashOUT) : ""}</td>
1556
+ <td style="color: ${(item?.dailyBalance ?? 0) >= 0 ? 'green' : 'red'}">
1557
+ ${addCommas(Math.abs(item?.dailyBalance ?? 0))}
1558
+ </td>
1559
+ <td style="color: ${(item?.cashInHand ?? 0) >= 0 ? 'green' : 'red'}">
1560
+ ${addCommas(Math.abs(item?.cashInHand ?? 0))}
1561
+ </td>
1562
+ </tr>
1563
+ `;
1564
+
1565
+ // ✅ Entry rows for this date
1566
+ let entryRows = item?.entries?.map((entry, entryIndex) => `
1567
+ <tr style="background-color: #ffffff;">
1568
+ <td>${index + 1}.${entryIndex + 1}</td>
1569
+ <td>${formatTime(entry?.created_at)}</td>
1570
+ <td class="credit-cell">${entry?.cashIN ? addCommas(entry?.cashIN) : ""}</td>
1571
+ <td class="debit-cell">${entry?.cashOUT ? addCommas(entry?.cashOUT) : ""}</td>
1572
+ <td></td>
1573
+ <td></td>
1574
+ </tr>
1575
+ `).join('') || "";
1576
+ return mainRow + entryRows;
1577
+ }).join('');
1578
+ };
1579
+ const htmlContent = `
1580
+ <html>
1581
+ <head>
1582
+ <style>
1583
+ @page {
1584
+ margin-bottom: 80px;
1585
+ }
1586
+
1587
+ body {
1588
+ font-family: Arial, sans-serif;
1589
+ margin: 0;
1590
+ padding: 0;
1591
+ }
1592
+
1593
+ .header {
1594
+ background-color: #FF5F00;
1595
+ color: white;
1596
+ text-align: center;
1597
+ padding: 2px 0;
1598
+ font-size: 20px;
1599
+ font-weight: bold;
1600
+ }
1601
+
1602
+ .footer {
1603
+ background-color: orange;
1604
+ color: white;
1605
+ text-align: center;
1606
+ padding: 5px 0;
1607
+ position: fixed;
1608
+ bottom: 0;
1609
+ width: 100%;
1610
+ height: 60px;
1611
+ }
1612
+
1613
+ .content {
1614
+ padding-bottom: 100px;
1615
+ }
1616
+
1617
+ .summary-box {
1618
+ width: 90%;
1619
+ margin: 15px auto;
1620
+ display: flex;
1621
+ justify-content: space-between;
1622
+ border: 1px solid #ccc;
1623
+ padding: 10px;
1624
+ border-radius: 5px;
1625
+ }
1626
+
1627
+ .summary-item {
1628
+ width: 32%;
1629
+ background-color: #f9f9f9;
1630
+ text-align: center;
1631
+ padding: 10px;
1632
+ border-radius: 5px;
1633
+ }
1634
+
1635
+ .summary-item h4 {
1636
+ margin: 0;
1637
+ font-size: 14px;
1638
+ }
1639
+
1640
+ .summary-item p {
1641
+ margin: 5px 0 0 0;
1642
+ font-size: 16px;
1643
+ font-weight: bold;
1644
+ }
1645
+
1646
+ table {
1647
+ width: 100%;
1648
+ border-collapse: collapse;
1649
+ margin-top: 20px;
1650
+ }
1651
+
1652
+ th, td {
1653
+ border: 1px solid #000;
1654
+ padding: 8px;
1655
+ text-align: center;
1656
+ font-size: 12px;
1657
+ }
1658
+
1659
+ th {
1660
+ background-color: #f2f2f2;
1661
+ }
1662
+
1663
+ .debit-cell {
1664
+ background-color: #f8d7da;
1665
+ }
1666
+
1667
+ .credit-cell {
1668
+ background-color: #d4edda;
1669
+ }
1670
+
1671
+ thead {
1672
+ display: table-header-group;
1673
+ }
1674
+
1675
+ tfoot {
1676
+ display: table-footer-group;
1677
+ }
1678
+
1679
+ tr {
1680
+ page-break-inside: avoid;
1681
+ }
1682
+
1683
+ .totals {
1684
+ width: 90%;
1685
+ margin: 20px auto;
1686
+ text-align: center;
1687
+ border: 1px solid #ccc;
1688
+ padding: 10px;
1689
+ border-radius: 5px;
1690
+ background: #f9f9f9;
1691
+ }
1692
+
1693
+ .report-generated {
1694
+ width: 90%;
1695
+ margin: 5px auto;
1696
+ text-align: right;
1697
+ font-size: 10px;
1698
+ color: #555;
1699
+ }
1700
+
1701
+ .title {
1702
+ color: white;
1703
+ font-size: 25px;
1704
+ }
1705
+ </style>
1706
+ </head>
1707
+ <body>
1708
+ <div class="header">
1709
+ <p class="title">DigiKhata</p>
1710
+ </div>
1711
+
1712
+ <div class="content">
1713
+ <div class="top" style="text-align:center; margin:20px 0;">
1714
+ <h3 style="margin:0;">Cashbook Statement</h3>
1715
+ </div>
1716
+
1717
+
1718
+ <!-- Summary Box -->
1719
+ <div class="summary-box">
1720
+ <div class="summary-item">
1721
+ <h4>Cash IN</h4>
1722
+ <p style="color: green">Rs ${addCommas(totalCashIN)}</p>
1723
+ </div>
1724
+ <div class="summary-item">
1725
+ <h4>Cash OUT</h4>
1726
+ <p style="color: red;">Rs ${addCommas(totalCashOUT)}</p>
1727
+ </div>
1728
+ <div class="summary-item">
1729
+ <h4>Net Balance</h4>
1730
+ <p style="color: ${diff >= 0 ? 'green' : 'red'}">
1731
+ Rs ${addCommas(Math.abs(diff))}
1732
+ </p>
1733
+ </div>
1734
+ </div>
1735
+
1736
+ <!-- Table -->
1737
+ <table style="width:90%; margin: 0 auto;">
1738
+ <thead>
1739
+ <tr>
1740
+ <th>Sr #</th>
1741
+ <th>Date / Time</th>
1742
+ <th>Total IN</th>
1743
+ <th>Total OUT</th>
1744
+ <th>Daily Balance</th>
1745
+ <th>Cash in Hand</th>
1746
+ </tr>
1747
+ </thead>
1748
+ <tbody>
1749
+ ${generateTableRows()}
1750
+ </tbody>
1751
+ </table>
1752
+
1753
+ <!-- Totals Section -->
1754
+ <div class="totals">
1755
+ <p><strong>Total IN:</strong> Rs ${addCommas(totalCashIN)}</p>
1756
+ <p><strong>Total OUT:</strong> Rs ${addCommas(totalCashOUT)}</p>
1757
+ </div>
1758
+
1759
+ <!-- Generated Date/Time -->
1760
+ <div class="report-generated">
1761
+ Report generated on: ${new Date().toLocaleString()}
1762
+ </div>
1763
+ </div>
1764
+ </body>
1765
+ </html>
1766
+ `;
1767
+ return htmlContent;
1768
+ };
1769
+ export function generateBillHTML({
1770
+ companyName = "test1",
1771
+ companyPhone = "03281594279",
1772
+ companyAddress = "C37X+7FF, Jhaal Khanuana Block B People's Colony No 1, Faisalabad, Pakistan Faisalabad Punjab",
1773
+ billTo = "Customer Name",
1774
+ billNo = "1",
1775
+ billDate = "20-10-2025",
1776
+ items = [],
1777
+ details = "details",
1778
+ amount,
1779
+ discount,
1780
+ tax,
1781
+ grandTotal,
1782
+ received,
1783
+ discountedAmount,
1784
+ clientName
1785
+ }) {
1786
+ // Calculate totals
1787
+ const totalAmount = amount;
1788
+
1789
+ // Generate table rows
1790
+ const tableRows = items.map((item, index) => `
1791
+ <tr>
1792
+ <td class="sno">${index + 1}</td>
1793
+ <td>${item.name}</td>
1794
+ <td class="qty">${item?.addedQty ? item?.addedQty : item?.qty}</td>
1795
+ <td class="price">${addCommas(Number(item?.addedRate ?? item?.sellingPrice))}</td>
1796
+ <td class="price">${addCommas(Number(item?.addedQty ?? item?.qty) * Number(item?.addedRate ?? item?.sellingPrice))}</td>
1797
+
1798
+ </tr>
1799
+ `).join('');
1800
+
1801
+ // Return final HTML
1802
+ return `
1803
+ <!DOCTYPE html>
1804
+ <html lang="en">
1805
+ <head>
1806
+ <meta charset="UTF-8">
1807
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
1808
+ <title>Bill - ${companyName}</title>
1809
+ <style>
1810
+ body { font-family: Arial, sans-serif; margin: 20px; border: 1px solid #ccc; padding: 10px; }
1811
+ .header, .bill-info, .totals, .details { margin-bottom: 20px; }
1812
+ .header { text-align: left; font-size: 0.9em; line-height: 1.4; }
1813
+ .company-name { font-size: 1.3em; font-weight: bold; }
1814
+ .header h1 { text-align: center; font-size: 1.8em; margin-top: 0; margin-bottom: 30px; }
1815
+ .bill-info { display: flex; justify-content: space-between; font-size: 1em; }
1816
+ .item-table { width: 100%; border-collapse: collapse; margin-bottom: 20px}
1817
+ .item-table th, .item-table td { padding: 8px 10px; text-align: left; border-bottom: 1px solid #eee; }
1818
+ .item-table th { font-weight: bold; border-bottom: 2px solid #ccc; }
1819
+ .item-table .qty, .item-table .price { text-align: right; width: 15%; }
1820
+ .item-table .sno { width: 5%; }
1821
+ .totals-section { display: flex; flex-direction: column; align-items: flex-end; border-top: 1px solid #000; padding-top: 10px; }
1822
+ .total-row { display: flex; justify-content: space-between; width: 100%; max-width: 300px; font-size: 1.1em; padding: 5px 0; }
1823
+ .total-row.grand-total { font-weight: bold; font-size: 1.2em; border-top: 2px solid #000; padding-top: 10px; }
1824
+ .details h2 { font-size: 1.1em; margin-bottom: 5px; border-bottom: 1px solid #000; padding-bottom: 5px; }
1825
+ .details p { margin-top: 5px; border-bottom: 1px solid #000; padding-bottom: 10px; }
1826
+ </style>
1827
+ </head>
1828
+ <body>
1829
+
1830
+ <div class="header">
1831
+ <p class="company-name"><strong>${companyName}</strong></p>
1832
+ <p class="company-name">${companyPhone}</p>
1833
+ <p><strong>${companyAddress}</strong></p>
1834
+ <h1>Bill</h1>
1835
+ </div>
1836
+
1837
+ <div class="bill-info">
1838
+ <div><strong>Bill To: ${billTo}</strong></div>
1839
+ <div style="text-align: right;">
1840
+ <p><strong>Bill No. ${billNo}</strong></p>
1841
+ <p>${billDate}</p>
1842
+ </div>
1843
+ </div>
1844
+
1845
+ <table class="item-table">
1846
+ <thead>
1847
+ <tr>
1848
+ <th class="sno">#</th>
1849
+ <th>Name</th>
1850
+ <th class="qty">Qty</th>
1851
+ <th class="price">Price</th>
1852
+ <th class="price">Amount</th>
1853
+ </tr>
1854
+ </thead>
1855
+ <tbody>
1856
+ ${tableRows}
1857
+ </tbody>
1858
+ </table>
1859
+
1860
+ <div class="totals-section">
1861
+
1862
+ <div class="total-row">
1863
+ <span><strong>Total</strong></span>
1864
+ <span><strong>Rs ${addCommas(Number(totalAmount))}</strong></span>
1865
+ </div>
1866
+
1867
+ <div class="total-row">
1868
+ <span>Discount % (${Number(discount)})</span>
1869
+ <span><strong>${addCommas(Number(discountedAmount))}</strong></span>
1870
+ </div>
1871
+
1872
+ <div class="total-row">
1873
+ <span>Tax</span>
1874
+ <span><strong>${addCommas(Number(tax))}</strong></span>
1875
+ </div>
1876
+
1877
+ <div class="total-row grand-total">
1878
+ <span>Grand Total</span>
1879
+ <span>Rs ${addCommas(Number(grandTotal))}</span>
1880
+ </div>
1881
+ </div>
1882
+
1883
+ <div class="details">
1884
+ <h2>Details</h2>
1885
+ <p>${details}</p>
1886
+ </div>
1887
+
1888
+ </body>
1889
+ </html>
1890
+ `;
1891
+ }
1892
+ export const allBillsTemplate = (data, grandTotal, totalBills) => {
1893
+ const generateTableRows = () => {
1894
+ return data?.map((item, index) => `<tr>
1895
+ <td>${index + 1}</td>
1896
+ <td>${formatMyDate(item?.entryDate)}</td>
1897
+ <td>${item?.bill}</td>
1898
+ <td>${item?.details || ""}</td>
1899
+ <td style="color: red;">${item?.payment_mode == 0 ? item?.amount : item?.advance}</td>
1900
+ </tr>`).join('');
1901
+ };
1902
+ const htmlContent = `
1903
+ <html>
1904
+
1905
+ <head>
1906
+ <style>
1907
+ @page {
1908
+ margin-bottom: 80px;
1909
+ }
1910
+
1911
+ body {
1912
+ font-family: Arial, sans-serif;
1913
+ margin: 0;
1914
+ padding: 0;
1915
+ }
1916
+
1917
+ .header {
1918
+ background-color: #FF5F00;
1919
+ color: white;
1920
+ text-align: center;
1921
+ padding: 2px 0;
1922
+ font-size: 20px;
1923
+ font-weight: bold;
1924
+ }
1925
+
1926
+ .footer {
1927
+ background-color: orange;
1928
+ color: white;
1929
+ text-align: center;
1930
+ padding: 5px 0;
1931
+ position: fixed;
1932
+ bottom: 0;
1933
+ width: 100%;
1934
+ height: 60px;
1935
+ }
1936
+
1937
+ .content {
1938
+ padding-bottom: 100px;
1939
+ }
1940
+
1941
+ .logo {
1942
+ width: 130px;
1943
+ height: auto;
1944
+ }
1945
+
1946
+ .top {
1947
+ width: 100%;
1948
+ text-align: center;
1949
+ }
1950
+
1951
+ .summary-box {
1952
+ width: 90%;
1953
+ margin: 15px auto;
1954
+ display: flex;
1955
+ justify-content: space-between;
1956
+ border: 1px solid #ccc;
1957
+ padding: 10px;
1958
+ border-radius: 5px;
1959
+ }
1960
+
1961
+ .summary-item {
1962
+ width: 32%;
1963
+ background-color: #f9f9f9;
1964
+ text-align: center;
1965
+ padding: 10px;
1966
+ border-radius: 5px;
1967
+ }
1968
+
1969
+ .summary-item h4 {
1970
+ margin: 0;
1971
+ font-size: 14px;
1972
+ }
1973
+
1974
+ .summary-item p {
1975
+ margin: 5px 0 0 0;
1976
+ font-size: 16px;
1977
+ font-weight: bold;
1978
+ }
1979
+
1980
+ table {
1981
+ width: 100%;
1982
+ border-collapse: collapse;
1983
+ margin-top: 20px;
1984
+ }
1985
+
1986
+ th,
1987
+ td {
1988
+ border: 1px solid #000;
1989
+ padding: 8px;
1990
+ text-align: center;
1991
+ font-size: 12px;
1992
+ }
1993
+
1994
+ th {
1995
+ background-color: #f2f2f2;
1996
+ }
1997
+
1998
+ .debit-cell {
1999
+ background-color: #f8d7da;
2000
+ /* light red */
2001
+ }
2002
+
2003
+ .credit-cell {
2004
+ background-color: #d4edda;
2005
+ /* light green */
2006
+ }
2007
+
2008
+ thead {
2009
+ display: table-header-group;
2010
+ }
2011
+
2012
+ tfoot {
2013
+ display: table-footer-group;
2014
+ }
2015
+
2016
+ tr {
2017
+ page-break-inside: avoid;
2018
+ }
2019
+
2020
+ .totals {
2021
+ width: 90%;
2022
+ margin: 20px auto;
2023
+ text-align: center;
2024
+ border: 1px solid #ccc;
2025
+ padding: 10px;
2026
+ border-radius: 5px;
2027
+ background: #f9f9f9;
2028
+ }
2029
+
2030
+ .report-generated {
2031
+ width: 90%;
2032
+ margin: 5px auto;
2033
+ text-align: right;
2034
+ font-size: 10px;
2035
+ color: #555;
2036
+ }
2037
+ .title {
2038
+ color: white;
2039
+ font-size: 25px
2040
+ }
2041
+ </style>
2042
+ </head>
2043
+
2044
+ <body>
2045
+ <div class="header">
2046
+ <p class="title">DigiKhata</p>
2047
+ </div>
2048
+
2049
+ <div class="content">
2050
+ <div class="top">
2051
+ <h3>Bill Report</h3>
2052
+ </div>
2053
+
2054
+ <!-- Summary Box -->
2055
+ <div class="summary-box">
2056
+ <div class="summary-item">
2057
+ <h4>Total Bills</h4>
2058
+ <p style="color: red;">Rs ${Math.abs(totalBills)}</p>
2059
+ </div>
2060
+ <div class="summary-item">
2061
+ <h4>Total Amount</h4>
2062
+ <p>Rs ${addCommas(Math.abs(grandTotal))}</p>
2063
+ </div>
2064
+ </div>
2065
+
2066
+ <!-- Table -->
2067
+ <table style="width:90%; margin: 0 auto;">
2068
+ <thead>
2069
+ <tr>
2070
+ <th>Sr #</th>
2071
+ <th>Date</th>
2072
+ <th>Bill#</th>
2073
+ <th>Details</th>
2074
+ <th>Amount</th>
2075
+ </tr>
2076
+ </thead>
2077
+ <tbody>
2078
+ ${generateTableRows()}
2079
+ </tbody>
2080
+ </table>
2081
+
2082
+ <!-- Totals Section -->
2083
+ <div class="totals">
2084
+ <p><strong>Total You'll Get:</strong> Rs ${Math.abs(grandTotal)}</p>
2085
+
2086
+ </div>
2087
+
2088
+ <!-- Generated Date/Time -->
2089
+ <div class="report-generated">
2090
+ Report generated on: ${new Date().toLocaleString()}
2091
+ </div>
2092
+ </div>
2093
+ </body>
2094
+
2095
+ </html>
2096
+ `;
2097
+ return htmlContent;
2098
+ };
2099
+ export const allItemsTemplate = (data, totalItems) => {
2100
+ const generateTableRows = () => {
2101
+ return data?.map((item, index) => `<tr>
2102
+ <td>${index + 1}</td>
2103
+ <td>${item?.name}</td>
2104
+ <td>${item?.unit || ""}</td>
2105
+ <td style="color: ${item?.qty > 0 ? 'green' : item?.qty < 0 ? 'red' : 'black'};">
2106
+ ${Math.abs(Number(item?.qty))}
2107
+ </td>
2108
+
2109
+ </tr>`).join('');
2110
+ };
2111
+ const htmlContent = `
2112
+ <html>
2113
+
2114
+ <head>
2115
+ <style>
2116
+ @page {
2117
+ margin-bottom: 80px;
2118
+ }
2119
+
2120
+ body {
2121
+ font-family: Arial, sans-serif;
2122
+ margin: 0;
2123
+ padding: 0;
2124
+ }
2125
+
2126
+ .header {
2127
+ background-color: #FF5F00;
2128
+ color: white;
2129
+ text-align: center;
2130
+ padding: 2px 0;
2131
+ font-size: 20px;
2132
+ font-weight: bold;
2133
+ }
2134
+
2135
+ .footer {
2136
+ background-color: orange;
2137
+ color: white;
2138
+ text-align: center;
2139
+ padding: 5px 0;
2140
+ position: fixed;
2141
+ bottom: 0;
2142
+ width: 100%;
2143
+ height: 60px;
2144
+ }
2145
+
2146
+ .content {
2147
+ padding-bottom: 100px;
2148
+ }
2149
+
2150
+ .logo {
2151
+ width: 130px;
2152
+ height: auto;
2153
+ }
2154
+
2155
+ .top {
2156
+ width: 100%;
2157
+ text-align: center;
2158
+ }
2159
+
2160
+ .summary-box {
2161
+ width: 90%;
2162
+ margin: 15px auto;
2163
+ display: flex;
2164
+ justify-content: space-between;
2165
+ border: 1px solid #ccc;
2166
+ padding: 10px;
2167
+ border-radius: 5px;
2168
+ }
2169
+
2170
+ .summary-item {
2171
+ width: 32%;
2172
+ background-color: #f9f9f9;
2173
+ text-align: center;
2174
+ padding: 10px;
2175
+ border-radius: 5px;
2176
+ }
2177
+
2178
+ .summary-item h4 {
2179
+ margin: 0;
2180
+ font-size: 14px;
2181
+ }
2182
+
2183
+ .summary-item p {
2184
+ margin: 5px 0 0 0;
2185
+ font-size: 16px;
2186
+ font-weight: bold;
2187
+ }
2188
+
2189
+ table {
2190
+ width: 100%;
2191
+ border-collapse: collapse;
2192
+ margin-top: 20px;
2193
+ }
2194
+
2195
+ th,
2196
+ td {
2197
+ border: 1px solid #000;
2198
+ padding: 8px;
2199
+ text-align: center;
2200
+ font-size: 12px;
2201
+ }
2202
+
2203
+ th {
2204
+ background-color: #f2f2f2;
2205
+ }
2206
+
2207
+ .debit-cell {
2208
+ background-color: #f8d7da;
2209
+ /* light red */
2210
+ }
2211
+
2212
+ .credit-cell {
2213
+ background-color: #d4edda;
2214
+ /* light green */
2215
+ }
2216
+
2217
+ thead {
2218
+ display: table-header-group;
2219
+ }
2220
+
2221
+ tfoot {
2222
+ display: table-footer-group;
2223
+ }
2224
+
2225
+ tr {
2226
+ page-break-inside: avoid;
2227
+ }
2228
+
2229
+ .totals {
2230
+ width: 90%;
2231
+ margin: 20px auto;
2232
+ text-align: center;
2233
+ border: 1px solid #ccc;
2234
+ padding: 10px;
2235
+ border-radius: 5px;
2236
+ background: #f9f9f9;
2237
+ }
2238
+
2239
+ .report-generated {
2240
+ width: 90%;
2241
+ margin: 5px auto;
2242
+ text-align: right;
2243
+ font-size: 10px;
2244
+ color: #555;
2245
+ }
2246
+ .title {
2247
+ color: white;
2248
+ font-size: 25px
2249
+ }
2250
+ </style>
2251
+ </head>
2252
+
2253
+ <body>
2254
+ <div class="header">
2255
+ <p class="title">DigiKhata</p>
2256
+ </div>
2257
+
2258
+ <div class="content">
2259
+ <div class="top">
2260
+ <h3>Items List Report</h3>
2261
+ </div>
2262
+ <h6 style="margin-left: 50px;">No of Items ${totalItems}</h6>
2263
+
2264
+ <!-- Table -->
2265
+ <table style="width:90%; margin: 0 auto;">
2266
+ <thead>
2267
+ <tr>
2268
+ <th>Sr #</th>
2269
+ <th>Item</th>
2270
+ <th>Unit</th>
2271
+ <th>Stock in Hand</th>
2272
+ </tr>
2273
+ </thead>
2274
+ <tbody>
2275
+ ${generateTableRows()}
2276
+ </tbody>
2277
+ </table>
2278
+
2279
+ <!-- Generated Date/Time -->
2280
+ <div class="report-generated">
2281
+ Report generated on: ${new Date().toLocaleString()}
2282
+ </div>
2283
+ </div>
2284
+ </body>
2285
+
2286
+ </html>
2287
+ `;
2288
+ return htmlContent;
2289
+ };
2290
+ export const itemDetailsTemplate = (data, grandTotal, totalBills) => {
2291
+ const generateTableRows = () => {
2292
+ return data?.map((item, index) => `<tr>
2293
+ <td>${index + 1}</td>
2294
+ <td>${formatMyDate(item?.entryDate)}</td>
2295
+ <td>${item?.itemName}</td>
2296
+ <td>${item?.details?.split("_bill_")[0] || ""}</td>
2297
+ <td style="color: ${Number(item?.qty) > 0 ? 'green' : Number(item?.qty) < 0 ? 'red' : 'black'}">
2298
+ ${Math.abs(Number(item?.qty))}
2299
+ </td>
2300
+
2301
+ <td>${addCommas(Number(item?.subamount))}</td>
2302
+ <td>${addCommas(Number(item?.amount))}</td>
2303
+ </tr>`).join('');
2304
+ };
2305
+ const htmlContent = `
2306
+ <html>
2307
+
2308
+ <head>
2309
+ <style>
2310
+ @page {
2311
+ margin-bottom: 80px;
2312
+ }
2313
+
2314
+ body {
2315
+ font-family: Arial, sans-serif;
2316
+ margin: 0;
2317
+ padding: 0;
2318
+ }
2319
+
2320
+ .header {
2321
+ background-color: #FF5F00;
2322
+ color: white;
2323
+ text-align: center;
2324
+ padding: 2px 0;
2325
+ font-size: 20px;
2326
+ font-weight: bold;
2327
+ }
2328
+
2329
+ .footer {
2330
+ background-color: orange;
2331
+ color: white;
2332
+ text-align: center;
2333
+ padding: 5px 0;
2334
+ position: fixed;
2335
+ bottom: 0;
2336
+ width: 100%;
2337
+ height: 60px;
2338
+ }
2339
+
2340
+ .content {
2341
+ padding-bottom: 100px;
2342
+ }
2343
+
2344
+ .logo {
2345
+ width: 130px;
2346
+ height: auto;
2347
+ }
2348
+
2349
+ .top {
2350
+ width: 100%;
2351
+ text-align: center;
2352
+ }
2353
+
2354
+ .summary-box {
2355
+ width: 90%;
2356
+ margin: 15px auto;
2357
+ display: flex;
2358
+ justify-content: space-between;
2359
+ border: 1px solid #ccc;
2360
+ padding: 10px;
2361
+ border-radius: 5px;
2362
+ }
2363
+
2364
+ .summary-item {
2365
+ width: 32%;
2366
+ background-color: #f9f9f9;
2367
+ text-align: center;
2368
+ padding: 10px;
2369
+ border-radius: 5px;
2370
+ }
2371
+
2372
+ .summary-item h4 {
2373
+ margin: 0;
2374
+ font-size: 14px;
2375
+ }
2376
+
2377
+ .summary-item p {
2378
+ margin: 5px 0 0 0;
2379
+ font-size: 16px;
2380
+ font-weight: bold;
2381
+ }
2382
+
2383
+ table {
2384
+ width: 100%;
2385
+ border-collapse: collapse;
2386
+ margin-top: 20px;
2387
+ }
2388
+
2389
+ th,
2390
+ td {
2391
+ border: 1px solid #000;
2392
+ padding: 8px;
2393
+ text-align: center;
2394
+ font-size: 12px;
2395
+ }
2396
+
2397
+ th {
2398
+ background-color: #f2f2f2;
2399
+ }
2400
+
2401
+ .debit-cell {
2402
+ background-color: #f8d7da;
2403
+ /* light red */
2404
+ }
2405
+
2406
+ .credit-cell {
2407
+ background-color: #d4edda;
2408
+ /* light green */
2409
+ }
2410
+
2411
+ thead {
2412
+ display: table-header-group;
2413
+ }
2414
+
2415
+ tfoot {
2416
+ display: table-footer-group;
2417
+ }
2418
+
2419
+ tr {
2420
+ page-break-inside: avoid;
2421
+ }
2422
+
2423
+ .totals {
2424
+ width: 90%;
2425
+ margin: 20px auto;
2426
+ text-align: center;
2427
+ border: 1px solid #ccc;
2428
+ padding: 10px;
2429
+ border-radius: 5px;
2430
+ background: #f9f9f9;
2431
+ }
2432
+
2433
+ .report-generated {
2434
+ width: 90%;
2435
+ margin: 5px auto;
2436
+ text-align: right;
2437
+ font-size: 10px;
2438
+ color: #555;
2439
+ }
2440
+ .title {
2441
+ color: white;
2442
+ font-size: 25px
2443
+ }
2444
+ </style>
2445
+ </head>
2446
+
2447
+ <body>
2448
+ <div class="header">
2449
+ <p class="title">DigiKhata</p>
2450
+ </div>
2451
+
2452
+ <div class="content">
2453
+ <div class="top">
2454
+ <h3>Stock Report</h3>
2455
+ </div>
2456
+
2457
+ <!-- Summary Box -->
2458
+ <div class="summary-box">
2459
+ <div class="summary-item">
2460
+ <h4>No of Entries</h4>
2461
+ <p>Rs ${Math.abs(totalBills)}</p>
2462
+ </div>
2463
+ <div class="summary-item">
2464
+ <h4>Total Amount</h4>
2465
+ <p>Rs ${addCommas(Math.abs(grandTotal))}</p>
2466
+ </div>
2467
+ </div>
2468
+
2469
+ <!-- Table -->
2470
+ <table style="width:90%; margin: 0 auto;">
2471
+ <thead>
2472
+ <tr>
2473
+ <th>Sr #</th>
2474
+ <th>Date</th>
2475
+ <th>Item</th>
2476
+ <th>Details</th>
2477
+ <th>Qty</th>
2478
+ <th>Rate</th>
2479
+ <th>Amount</th>
2480
+ </tr>
2481
+ </thead>
2482
+ <tbody>
2483
+ ${generateTableRows()}
2484
+ </tbody>
2485
+ </table>
2486
+
2487
+ <!-- Totals Section -->
2488
+ <div class="totals">
2489
+ <p><strong>Grand Total:</strong> Rs ${Math.abs(grandTotal)}</p>
2490
+
2491
+ </div>
2492
+
2493
+ <!-- Generated Date/Time -->
2494
+ <div class="report-generated">
2495
+ Report generated on: ${new Date().toLocaleString()}
2496
+ </div>
2497
+ </div>
2498
+ </body>
2499
+
2500
+ </html>
2501
+ `;
2502
+ return htmlContent;
2503
+ };
2504
+ //# sourceMappingURL=htmlTemplates.js.map