bananas-commerce-admin 0.2.2 → 0.2.5

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 (361) hide show
  1. package/README.md +4 -8
  2. package/dist/cjs/Admin.js +54 -27
  3. package/dist/cjs/Admin.js.map +1 -0
  4. package/dist/cjs/App.js +23 -11
  5. package/dist/cjs/App.js.map +1 -0
  6. package/dist/cjs/api.js +125 -65
  7. package/dist/cjs/api.js.map +1 -0
  8. package/dist/cjs/components/Branding.js +10 -8
  9. package/dist/cjs/components/Branding.js.map +1 -0
  10. package/dist/cjs/components/Hamburger.js +23 -11
  11. package/dist/cjs/components/Hamburger.js.map +1 -0
  12. package/dist/cjs/components/Link.js +9 -7
  13. package/dist/cjs/components/Link.js.map +1 -0
  14. package/dist/cjs/components/Logo.js +5 -3
  15. package/dist/cjs/components/Logo.js.map +1 -0
  16. package/dist/cjs/components/NavBar.js +48 -31
  17. package/dist/cjs/components/NavBar.js.map +1 -0
  18. package/dist/cjs/components/NavBarItem.js +16 -14
  19. package/dist/cjs/components/NavBarItem.js.map +1 -0
  20. package/dist/cjs/components/NavBarRoutes.js +23 -18
  21. package/dist/cjs/components/NavBarRoutes.js.map +1 -0
  22. package/dist/cjs/components/ProgressBar.js +5 -3
  23. package/dist/cjs/components/ProgressBar.js.map +1 -0
  24. package/dist/cjs/components/TitleBar.js +18 -17
  25. package/dist/cjs/components/TitleBar.js.map +1 -0
  26. package/dist/cjs/components/User.js +34 -21
  27. package/dist/cjs/components/User.js.map +1 -0
  28. package/dist/cjs/containers/Content.js +8 -6
  29. package/dist/cjs/containers/Content.js.map +1 -0
  30. package/dist/cjs/containers/ErrorScreen.js +21 -19
  31. package/dist/cjs/containers/ErrorScreen.js.map +1 -0
  32. package/dist/cjs/containers/LoadingScreen.js +64 -49
  33. package/dist/cjs/containers/LoadingScreen.js.map +1 -0
  34. package/dist/cjs/containers/PageErrorBoundary.js +33 -14
  35. package/dist/cjs/containers/PageErrorBoundary.js.map +1 -0
  36. package/dist/cjs/containers/PageLoader.js +129 -40
  37. package/dist/cjs/containers/PageLoader.js.map +1 -0
  38. package/dist/cjs/contexts/ApiContext.js +53 -16
  39. package/dist/cjs/contexts/ApiContext.js.map +1 -0
  40. package/dist/cjs/contexts/DialogContext.js +82 -0
  41. package/dist/cjs/contexts/DialogContext.js.map +1 -0
  42. package/dist/cjs/contexts/I18nContext.js +58 -18
  43. package/dist/cjs/contexts/I18nContext.js.map +1 -0
  44. package/dist/cjs/contexts/RouterContext.js +52 -44
  45. package/dist/cjs/contexts/RouterContext.js.map +1 -0
  46. package/dist/cjs/contexts/UserContext.js +96 -43
  47. package/dist/cjs/contexts/UserContext.js.map +1 -0
  48. package/dist/cjs/extensions/bananas/components/PasswordChangeForm.js +45 -32
  49. package/dist/cjs/extensions/bananas/components/PasswordChangeForm.js.map +1 -0
  50. package/dist/cjs/extensions/bananas/index.js +3 -2
  51. package/dist/cjs/extensions/bananas/index.js.map +1 -0
  52. package/dist/cjs/extensions/bananas/pages/me/list.js +10 -9
  53. package/dist/cjs/extensions/bananas/pages/me/list.js.map +1 -0
  54. package/dist/cjs/extensions/fulfillment/components/AddressInfo.js +8 -6
  55. package/dist/cjs/extensions/fulfillment/components/AddressInfo.js.map +1 -0
  56. package/dist/cjs/extensions/fulfillment/components/ContactInfo.js +9 -7
  57. package/dist/cjs/extensions/fulfillment/components/ContactInfo.js.map +1 -0
  58. package/dist/cjs/extensions/fulfillment/components/RecipientCard.js +14 -12
  59. package/dist/cjs/extensions/fulfillment/components/RecipientCard.js.map +1 -0
  60. package/dist/cjs/extensions/fulfillment/components/ShipmentAccordion.js +124 -65
  61. package/dist/cjs/extensions/fulfillment/components/ShipmentAccordion.js.map +1 -0
  62. package/dist/cjs/extensions/fulfillment/components/ShipmentCard.js +19 -17
  63. package/dist/cjs/extensions/fulfillment/components/ShipmentCard.js.map +1 -0
  64. package/dist/cjs/extensions/fulfillment/components/ShipmentDestinationButtons.js +32 -19
  65. package/dist/cjs/extensions/fulfillment/components/ShipmentDestinationButtons.js.map +1 -0
  66. package/dist/cjs/extensions/fulfillment/components/ShipmentDestinationIcon.js +23 -11
  67. package/dist/cjs/extensions/fulfillment/components/ShipmentDestinationIcon.js.map +1 -0
  68. package/dist/cjs/extensions/fulfillment/components/ShipmentItemsCard.js +73 -46
  69. package/dist/cjs/extensions/fulfillment/components/ShipmentItemsCard.js.map +1 -0
  70. package/dist/cjs/extensions/fulfillment/components/ShipmentItemsTable.js +49 -27
  71. package/dist/cjs/extensions/fulfillment/components/ShipmentItemsTable.js.map +1 -0
  72. package/dist/cjs/extensions/fulfillment/components/ShipmentRow.js +12 -10
  73. package/dist/cjs/extensions/fulfillment/components/ShipmentRow.js.map +1 -0
  74. package/dist/cjs/extensions/fulfillment/components/order/OrderAccordion.js +244 -0
  75. package/dist/cjs/extensions/fulfillment/components/order/OrderAccordion.js.map +1 -0
  76. package/dist/cjs/extensions/fulfillment/components/order/OrderItemsTable.js +96 -0
  77. package/dist/cjs/extensions/fulfillment/components/order/OrderItemsTable.js.map +1 -0
  78. package/dist/cjs/extensions/fulfillment/components/order/OrderStateChip.js +98 -0
  79. package/dist/cjs/extensions/fulfillment/components/order/OrderStateChip.js.map +1 -0
  80. package/dist/cjs/extensions/fulfillment/index.js +59 -12
  81. package/dist/cjs/extensions/fulfillment/index.js.map +1 -0
  82. package/dist/cjs/extensions/fulfillment/pages/order/list.js +50 -36
  83. package/dist/cjs/extensions/fulfillment/pages/order/list.js.map +1 -0
  84. package/dist/cjs/extensions/fulfillment/pages/recipient/detail.js +7 -5
  85. package/dist/cjs/extensions/fulfillment/pages/recipient/detail.js.map +1 -0
  86. package/dist/cjs/extensions/fulfillment/pages/shipment/detail.js +57 -42
  87. package/dist/cjs/extensions/fulfillment/pages/shipment/detail.js.map +1 -0
  88. package/dist/cjs/extensions/fulfillment/pages/shipment/list.js +35 -31
  89. package/dist/cjs/extensions/fulfillment/pages/shipment/list.js.map +1 -0
  90. package/dist/cjs/extensions/fulfillment/types/order.js +3 -0
  91. package/dist/cjs/extensions/fulfillment/types/order.js.map +1 -0
  92. package/dist/cjs/extensions/fulfillment/types/recipient.js +1 -0
  93. package/dist/cjs/extensions/fulfillment/types/recipient.js.map +1 -0
  94. package/dist/cjs/extensions/fulfillment/types/shipment.js +1 -0
  95. package/dist/cjs/extensions/fulfillment/types/shipment.js.map +1 -0
  96. package/dist/cjs/extensions/fulfillment/types/util.js +1 -0
  97. package/dist/cjs/extensions/fulfillment/types/util.js.map +1 -0
  98. package/dist/cjs/extensions/pos/components/PurchaseRow.js +13 -11
  99. package/dist/cjs/extensions/pos/components/PurchaseRow.js.map +1 -0
  100. package/dist/cjs/extensions/pos/components/ReceiptCard.js +99 -44
  101. package/dist/cjs/extensions/pos/components/ReceiptCard.js.map +1 -0
  102. package/dist/cjs/extensions/pos/components/ReceiptLine.js +17 -12
  103. package/dist/cjs/extensions/pos/components/ReceiptLine.js.map +1 -0
  104. package/dist/cjs/extensions/pos/components/ReceiptTable.js +168 -43
  105. package/dist/cjs/extensions/pos/components/ReceiptTable.js.map +1 -0
  106. package/dist/cjs/extensions/pos/components/SearchBar.js +40 -25
  107. package/dist/cjs/extensions/pos/components/SearchBar.js.map +1 -0
  108. package/dist/cjs/extensions/pos/index.js +57 -12
  109. package/dist/cjs/extensions/pos/index.js.map +1 -0
  110. package/dist/cjs/extensions/pos/pages/purchase/detail.js +31 -20
  111. package/dist/cjs/extensions/pos/pages/purchase/detail.js.map +1 -0
  112. package/dist/cjs/extensions/pos/pages/purchase/list.js +39 -32
  113. package/dist/cjs/extensions/pos/pages/purchase/list.js.map +1 -0
  114. package/dist/cjs/extensions/pos/types/purchase.js +1 -0
  115. package/dist/cjs/extensions/pos/types/purchase.js.map +1 -0
  116. package/dist/cjs/extensions/pos/types/receipt.js +8 -0
  117. package/dist/cjs/extensions/pos/types/receipt.js.map +1 -0
  118. package/dist/cjs/forms/LoginForm.js +31 -30
  119. package/dist/cjs/forms/LoginForm.js.map +1 -0
  120. package/dist/cjs/hooks/useAsyncError.js +5 -4
  121. package/dist/cjs/hooks/useAsyncError.js.map +1 -0
  122. package/dist/cjs/hooks/useLocalStorage.js +8 -7
  123. package/dist/cjs/hooks/useLocalStorage.js.map +1 -0
  124. package/dist/cjs/index.js +1 -0
  125. package/dist/cjs/index.js.map +1 -0
  126. package/dist/cjs/pages/DashboardPage.js +4 -3
  127. package/dist/cjs/pages/DashboardPage.js.map +1 -0
  128. package/dist/cjs/pages/LoginPage.js +12 -10
  129. package/dist/cjs/pages/LoginPage.js.map +1 -0
  130. package/dist/cjs/router/Router.js +25 -19
  131. package/dist/cjs/router/Router.js.map +1 -0
  132. package/dist/cjs/router/routes.js +8 -7
  133. package/dist/cjs/router/routes.js.map +1 -0
  134. package/dist/cjs/types/index.js +1 -0
  135. package/dist/cjs/types/index.js.map +1 -0
  136. package/dist/cjs/util/format_purchase_number.js +2 -1
  137. package/dist/cjs/util/format_purchase_number.js.map +1 -0
  138. package/dist/cjs/util/get_cookie.js +4 -3
  139. package/dist/cjs/util/get_cookie.js.map +1 -0
  140. package/dist/cjs/util/index.js +10 -7
  141. package/dist/cjs/util/index.js.map +1 -0
  142. package/dist/cjs/util/is_email.js +1 -0
  143. package/dist/cjs/util/is_email.js.map +1 -0
  144. package/dist/cjs/util/is_positive_integer.js +2 -1
  145. package/dist/cjs/util/is_positive_integer.js.map +1 -0
  146. package/dist/cjs/util/select_styles.js +24 -7
  147. package/dist/cjs/util/select_styles.js.map +1 -0
  148. package/dist/esm/Admin.js +20 -16
  149. package/dist/esm/Admin.js.map +1 -0
  150. package/dist/esm/App.js +15 -3
  151. package/dist/esm/App.js.map +1 -0
  152. package/dist/esm/api.js +125 -63
  153. package/dist/esm/api.js.map +1 -0
  154. package/dist/esm/components/Branding.js +4 -2
  155. package/dist/esm/components/Branding.js.map +1 -0
  156. package/dist/esm/components/Hamburger.js +17 -5
  157. package/dist/esm/components/Hamburger.js.map +1 -0
  158. package/dist/esm/components/Link.js +6 -4
  159. package/dist/esm/components/Link.js.map +1 -0
  160. package/dist/esm/components/Logo.js +4 -2
  161. package/dist/esm/components/Logo.js.map +1 -0
  162. package/dist/esm/components/NavBar.js +38 -21
  163. package/dist/esm/components/NavBar.js.map +1 -0
  164. package/dist/esm/components/NavBarItem.js +8 -6
  165. package/dist/esm/components/NavBarItem.js.map +1 -0
  166. package/dist/esm/components/NavBarRoutes.js +19 -14
  167. package/dist/esm/components/NavBarRoutes.js.map +1 -0
  168. package/dist/esm/components/ProgressBar.js +3 -1
  169. package/dist/esm/components/ProgressBar.js.map +1 -0
  170. package/dist/esm/components/TitleBar.js +9 -8
  171. package/dist/esm/components/TitleBar.js.map +1 -0
  172. package/dist/esm/components/User.js +24 -11
  173. package/dist/esm/components/User.js.map +1 -0
  174. package/dist/esm/containers/Content.js +5 -3
  175. package/dist/esm/containers/Content.js.map +1 -0
  176. package/dist/esm/containers/ErrorScreen.js +10 -8
  177. package/dist/esm/containers/ErrorScreen.js.map +1 -0
  178. package/dist/esm/containers/LoadingScreen.js +56 -41
  179. package/dist/esm/containers/LoadingScreen.js.map +1 -0
  180. package/dist/esm/containers/PageErrorBoundary.js +33 -13
  181. package/dist/esm/containers/PageErrorBoundary.js.map +1 -0
  182. package/dist/esm/containers/PageLoader.js +124 -34
  183. package/dist/esm/containers/PageLoader.js.map +1 -0
  184. package/dist/esm/contexts/ApiContext.js +49 -12
  185. package/dist/esm/contexts/ApiContext.js.map +1 -0
  186. package/dist/esm/contexts/DialogContext.js +51 -0
  187. package/dist/esm/contexts/DialogContext.js.map +1 -0
  188. package/dist/esm/contexts/I18nContext.js +55 -15
  189. package/dist/esm/contexts/I18nContext.js.map +1 -0
  190. package/dist/esm/contexts/RouterContext.js +47 -39
  191. package/dist/esm/contexts/RouterContext.js.map +1 -0
  192. package/dist/esm/contexts/UserContext.js +93 -40
  193. package/dist/esm/contexts/UserContext.js.map +1 -0
  194. package/dist/esm/extensions/bananas/components/PasswordChangeForm.js +32 -19
  195. package/dist/esm/extensions/bananas/components/PasswordChangeForm.js.map +1 -0
  196. package/dist/esm/extensions/bananas/index.js +3 -2
  197. package/dist/esm/extensions/bananas/index.js.map +1 -0
  198. package/dist/esm/extensions/bananas/pages/me/list.js +3 -2
  199. package/dist/esm/extensions/bananas/pages/me/list.js.map +1 -0
  200. package/dist/esm/extensions/fulfillment/components/AddressInfo.js +5 -3
  201. package/dist/esm/extensions/fulfillment/components/AddressInfo.js.map +1 -0
  202. package/dist/esm/extensions/fulfillment/components/ContactInfo.js +5 -3
  203. package/dist/esm/extensions/fulfillment/components/ContactInfo.js.map +1 -0
  204. package/dist/esm/extensions/fulfillment/components/RecipientCard.js +6 -4
  205. package/dist/esm/extensions/fulfillment/components/RecipientCard.js.map +1 -0
  206. package/dist/esm/extensions/fulfillment/components/ShipmentAccordion.js +109 -50
  207. package/dist/esm/extensions/fulfillment/components/ShipmentAccordion.js.map +1 -0
  208. package/dist/esm/extensions/fulfillment/components/ShipmentCard.js +8 -6
  209. package/dist/esm/extensions/fulfillment/components/ShipmentCard.js.map +1 -0
  210. package/dist/esm/extensions/fulfillment/components/ShipmentDestinationButtons.js +27 -14
  211. package/dist/esm/extensions/fulfillment/components/ShipmentDestinationButtons.js.map +1 -0
  212. package/dist/esm/extensions/fulfillment/components/ShipmentDestinationIcon.js +18 -6
  213. package/dist/esm/extensions/fulfillment/components/ShipmentDestinationIcon.js.map +1 -0
  214. package/dist/esm/extensions/fulfillment/components/ShipmentItemsCard.js +54 -27
  215. package/dist/esm/extensions/fulfillment/components/ShipmentItemsCard.js.map +1 -0
  216. package/dist/esm/extensions/fulfillment/components/ShipmentItemsTable.js +40 -18
  217. package/dist/esm/extensions/fulfillment/components/ShipmentItemsTable.js.map +1 -0
  218. package/dist/esm/extensions/fulfillment/components/ShipmentRow.js +8 -6
  219. package/dist/esm/extensions/fulfillment/components/ShipmentRow.js.map +1 -0
  220. package/dist/esm/extensions/fulfillment/components/order/OrderAccordion.js +239 -0
  221. package/dist/esm/extensions/fulfillment/components/order/OrderAccordion.js.map +1 -0
  222. package/dist/esm/extensions/fulfillment/components/order/OrderItemsTable.js +91 -0
  223. package/dist/esm/extensions/fulfillment/components/order/OrderItemsTable.js.map +1 -0
  224. package/dist/esm/extensions/fulfillment/components/order/OrderStateChip.js +70 -0
  225. package/dist/esm/extensions/fulfillment/components/order/OrderStateChip.js.map +1 -0
  226. package/dist/esm/extensions/fulfillment/index.js +61 -14
  227. package/dist/esm/extensions/fulfillment/index.js.map +1 -0
  228. package/dist/esm/extensions/fulfillment/pages/order/list.js +40 -26
  229. package/dist/esm/extensions/fulfillment/pages/order/list.js.map +1 -0
  230. package/dist/esm/extensions/fulfillment/pages/recipient/detail.js +4 -2
  231. package/dist/esm/extensions/fulfillment/pages/recipient/detail.js.map +1 -0
  232. package/dist/esm/extensions/fulfillment/pages/shipment/detail.js +38 -23
  233. package/dist/esm/extensions/fulfillment/pages/shipment/detail.js.map +1 -0
  234. package/dist/esm/extensions/fulfillment/pages/shipment/list.js +24 -20
  235. package/dist/esm/extensions/fulfillment/pages/shipment/list.js.map +1 -0
  236. package/dist/esm/extensions/fulfillment/types/order.js +2 -0
  237. package/dist/esm/extensions/fulfillment/types/order.js.map +1 -0
  238. package/dist/esm/extensions/fulfillment/types/recipient.js +1 -0
  239. package/dist/esm/extensions/fulfillment/types/recipient.js.map +1 -0
  240. package/dist/esm/extensions/fulfillment/types/shipment.js +1 -0
  241. package/dist/esm/extensions/fulfillment/types/shipment.js.map +1 -0
  242. package/dist/esm/extensions/fulfillment/types/util.js +1 -0
  243. package/dist/esm/extensions/fulfillment/types/util.js.map +1 -0
  244. package/dist/esm/extensions/pos/components/PurchaseRow.js +8 -6
  245. package/dist/esm/extensions/pos/components/PurchaseRow.js.map +1 -0
  246. package/dist/esm/extensions/pos/components/ReceiptCard.js +83 -28
  247. package/dist/esm/extensions/pos/components/ReceiptCard.js.map +1 -0
  248. package/dist/esm/extensions/pos/components/ReceiptLine.js +11 -6
  249. package/dist/esm/extensions/pos/components/ReceiptLine.js.map +1 -0
  250. package/dist/esm/extensions/pos/components/ReceiptTable.js +159 -34
  251. package/dist/esm/extensions/pos/components/ReceiptTable.js.map +1 -0
  252. package/dist/esm/extensions/pos/components/SearchBar.js +28 -13
  253. package/dist/esm/extensions/pos/components/SearchBar.js.map +1 -0
  254. package/dist/esm/extensions/pos/index.js +58 -13
  255. package/dist/esm/extensions/pos/index.js.map +1 -0
  256. package/dist/esm/extensions/pos/pages/purchase/detail.js +23 -12
  257. package/dist/esm/extensions/pos/pages/purchase/detail.js.map +1 -0
  258. package/dist/esm/extensions/pos/pages/purchase/list.js +23 -16
  259. package/dist/esm/extensions/pos/pages/purchase/list.js.map +1 -0
  260. package/dist/esm/extensions/pos/types/purchase.js +1 -0
  261. package/dist/esm/extensions/pos/types/purchase.js.map +1 -0
  262. package/dist/esm/extensions/pos/types/receipt.js +7 -1
  263. package/dist/esm/extensions/pos/types/receipt.js.map +1 -0
  264. package/dist/esm/forms/LoginForm.js +19 -18
  265. package/dist/esm/forms/LoginForm.js.map +1 -0
  266. package/dist/esm/hooks/useAsyncError.js +4 -3
  267. package/dist/esm/hooks/useAsyncError.js.map +1 -0
  268. package/dist/esm/hooks/useLocalStorage.js +7 -6
  269. package/dist/esm/hooks/useLocalStorage.js.map +1 -0
  270. package/dist/esm/index.js +1 -0
  271. package/dist/esm/index.js.map +1 -0
  272. package/dist/esm/pages/DashboardPage.js +3 -2
  273. package/dist/esm/pages/DashboardPage.js.map +1 -0
  274. package/dist/esm/pages/LoginPage.js +5 -3
  275. package/dist/esm/pages/LoginPage.js.map +1 -0
  276. package/dist/esm/router/Router.js +17 -11
  277. package/dist/esm/router/Router.js.map +1 -0
  278. package/dist/esm/router/routes.js +7 -6
  279. package/dist/esm/router/routes.js.map +1 -0
  280. package/dist/esm/types/index.js +1 -0
  281. package/dist/esm/types/index.js.map +1 -0
  282. package/dist/esm/util/format_purchase_number.js +2 -1
  283. package/dist/esm/util/format_purchase_number.js.map +1 -0
  284. package/dist/esm/util/get_cookie.js +4 -3
  285. package/dist/esm/util/get_cookie.js.map +1 -0
  286. package/dist/esm/util/index.js +10 -7
  287. package/dist/esm/util/index.js.map +1 -0
  288. package/dist/esm/util/is_email.js +1 -0
  289. package/dist/esm/util/is_email.js.map +1 -0
  290. package/dist/esm/util/is_positive_integer.js +2 -1
  291. package/dist/esm/util/is_positive_integer.js.map +1 -0
  292. package/dist/esm/util/select_styles.js +25 -8
  293. package/dist/esm/util/select_styles.js.map +1 -0
  294. package/dist/types/Admin.d.ts +1 -1
  295. package/dist/types/App.d.ts +1 -1
  296. package/dist/types/components/Hamburger.d.ts +1 -1
  297. package/dist/types/components/Link.d.ts +1 -1
  298. package/dist/types/components/User.d.ts +4 -7
  299. package/dist/types/containers/PageErrorBoundary.d.ts +1 -1
  300. package/dist/types/containers/PageLoader.d.ts +1 -0
  301. package/dist/types/contexts/DialogContext.d.ts +7 -0
  302. package/dist/types/contexts/RouterContext.d.ts +2 -2
  303. package/dist/types/extensions/fulfillment/components/ShipmentDestinationIcon.d.ts +1 -1
  304. package/dist/types/extensions/fulfillment/components/order/OrderAccordion.d.ts +7 -0
  305. package/dist/types/extensions/fulfillment/components/order/OrderItemsTable.d.ts +9 -0
  306. package/dist/types/extensions/fulfillment/components/order/OrderStateChip.d.ts +10 -0
  307. package/dist/types/extensions/fulfillment/pages/order/list.d.ts +2 -2
  308. package/dist/types/extensions/fulfillment/types/order.d.ts +38 -0
  309. package/dist/types/extensions/fulfillment/types/shipment.d.ts +1 -1
  310. package/dist/types/extensions/pos/components/PurchaseRow.d.ts +2 -2
  311. package/dist/types/extensions/pos/components/ReceiptCard.d.ts +3 -3
  312. package/dist/types/extensions/pos/components/ReceiptLine.d.ts +1 -0
  313. package/dist/types/extensions/pos/components/ReceiptTable.d.ts +4 -3
  314. package/dist/types/extensions/pos/components/SearchBar.d.ts +1 -1
  315. package/dist/types/extensions/pos/pages/purchase/list.d.ts +2 -2
  316. package/dist/types/extensions/pos/types/purchase.d.ts +32 -6
  317. package/dist/types/extensions/pos/types/receipt.d.ts +7 -9
  318. package/dist/types/router/Router.d.ts +2 -1
  319. package/dist/types/types/index.d.ts +7 -4
  320. package/example/index.tsx +28 -9
  321. package/example/package-lock.json +7906 -1003
  322. package/example/package.json +18 -8
  323. package/example/scripts/build.js +4 -0
  324. package/example/scripts/options.js +81 -0
  325. package/{example/pages/.gitkeep → nodemon.json} +0 -0
  326. package/package.json +8 -4
  327. package/src/Admin.tsx +31 -27
  328. package/src/App.tsx +8 -4
  329. package/src/components/TitleBar.tsx +23 -18
  330. package/src/containers/Content.tsx +1 -1
  331. package/src/containers/PageLoader.tsx +32 -14
  332. package/src/contexts/DialogContext.tsx +76 -0
  333. package/src/contexts/UserContext.tsx +15 -14
  334. package/src/extensions/fulfillment/components/ShipmentAccordion.tsx +126 -116
  335. package/src/extensions/fulfillment/components/ShipmentCard.tsx +3 -9
  336. package/src/extensions/fulfillment/components/ShipmentItemsCard.tsx +42 -45
  337. package/src/extensions/fulfillment/components/order/OrderAccordion.tsx +231 -0
  338. package/src/extensions/fulfillment/components/order/OrderItemsTable.tsx +128 -0
  339. package/src/extensions/fulfillment/components/order/OrderStateChip.tsx +79 -0
  340. package/src/extensions/fulfillment/index.tsx +27 -9
  341. package/src/extensions/fulfillment/pages/order/list.tsx +43 -54
  342. package/src/extensions/fulfillment/pages/shipment/detail.tsx +47 -55
  343. package/src/extensions/fulfillment/types/order.ts +53 -0
  344. package/src/extensions/pos/components/PurchaseRow.tsx +3 -5
  345. package/src/extensions/pos/components/ReceiptCard.tsx +92 -46
  346. package/src/extensions/pos/components/ReceiptLine.tsx +6 -5
  347. package/src/extensions/pos/components/ReceiptTable.tsx +214 -73
  348. package/src/extensions/pos/index.tsx +3 -3
  349. package/src/extensions/pos/pages/purchase/detail.tsx +28 -33
  350. package/src/extensions/pos/pages/purchase/list.tsx +14 -20
  351. package/src/extensions/pos/types/purchase.ts +33 -6
  352. package/src/extensions/pos/types/receipt.ts +8 -9
  353. package/src/pages/DashboardPage.tsx +1 -1
  354. package/src/router/Router.tsx +14 -15
  355. package/src/types/index.ts +4 -1
  356. package/tsconfig.json +5 -13
  357. package/example/Dockerfile +0 -27
  358. package/example/README.md +0 -6
  359. package/example/build.js +0 -19
  360. package/example/docker-compose.yml +0 -7
  361. package/example/public/index.html +0 -14
@@ -10,8 +10,8 @@ export interface RouteInfo {
10
10
  path: string;
11
11
  page: string;
12
12
  }
13
- export declare type RouterParams = Record<string, string | number | boolean>;
14
- export declare type RouterQuery = string | URLSearchParams | string[][] | Record<string, string>;
13
+ export type RouterParams = Record<string, string | number | boolean>;
14
+ export type RouterQuery = string | URLSearchParams | string[][] | Record<string, string>;
15
15
  interface RouterContext {
16
16
  routes: RouteInfo[];
17
17
  getCurrent(): {
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { SvgIconTypeMap } from "@mui/material/SvgIcon";
3
3
  import { ShipmentDestinationType } from "../types/shipment";
4
- export declare type ShipmentDestinationIconProps = SvgIconTypeMap["props"] & {
4
+ export type ShipmentDestinationIconProps = SvgIconTypeMap["props"] & {
5
5
  type: ShipmentDestinationType;
6
6
  };
7
7
  export declare const ShipmentDestinationIcon: React.FC<ShipmentDestinationIconProps>;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ import { OrderListItem } from "../../types/order";
3
+ interface OrderAccordionProps {
4
+ order: OrderListItem;
5
+ }
6
+ declare const OrderAccordion: React.FC<OrderAccordionProps>;
7
+ export default OrderAccordion;
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { OrderItem } from "../../types/order";
3
+ export interface ShipmentItemsTableProps {
4
+ items: OrderItem[];
5
+ editable?: boolean;
6
+ onSelect?: (selected: OrderItem[]) => void;
7
+ }
8
+ declare const ShipmentItemsTable: React.FC<ShipmentItemsTableProps>;
9
+ export default ShipmentItemsTable;
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import { ChipProps } from "@mui/material/Chip";
3
+ import { OrderStateType } from "../../types/order";
4
+ type OrderStateChipProps<T> = {
5
+ element: T;
6
+ } & ChipProps;
7
+ declare const OrderStateChip: <T extends {
8
+ state: OrderStateType;
9
+ }>(props: OrderStateChipProps<T>) => JSX.Element;
10
+ export default OrderStateChip;
@@ -1,5 +1,5 @@
1
1
  import { PageComponent } from "../../../../types";
2
- import { ShipmentListItem } from "../../types/shipment";
3
2
  import { LimitOffset } from "../../types/util";
4
- declare const ShipmentListPage: PageComponent<LimitOffset<ShipmentListItem>>;
3
+ import { OrderListItem } from "../../types/order";
4
+ declare const ShipmentListPage: PageComponent<LimitOffset<OrderListItem>>;
5
5
  export default ShipmentListPage;
@@ -0,0 +1,38 @@
1
+ export type OrderDestinationType = "HOME" | "STORE" | "SERVICE_POINT" | "LOCKER";
2
+ export type OrderStateType = "PENDING" | "CONFIRMED" | "SENT" | "IN_TRANSIT" | "READY_FOR_PICKUP" | "DELIVERED" | "CANCELLED";
3
+ export interface OrderListItem {
4
+ shipment_reference: string;
5
+ purchase_number: number;
6
+ email: string;
7
+ phone?: string;
8
+ option_name: string;
9
+ carrier: string;
10
+ destination_type: OrderDestinationType;
11
+ name: string;
12
+ tracking_number: string;
13
+ state: OrderStateType;
14
+ }
15
+ export interface OrderDetail {
16
+ option_name: string;
17
+ destination_type: OrderDestinationType;
18
+ state: OrderStateType;
19
+ destination_reference?: string;
20
+ name: string;
21
+ care_of: string;
22
+ street_address: string;
23
+ street_address2: string;
24
+ postal_code: string;
25
+ city: string;
26
+ country_code: string;
27
+ region: string;
28
+ items: OrderItem[];
29
+ shipment: {
30
+ carrier: string;
31
+ tracking_number: string;
32
+ } | null;
33
+ }
34
+ export interface OrderItem {
35
+ code: string;
36
+ name: string | null;
37
+ quantity: number;
38
+ }
@@ -1,4 +1,4 @@
1
- export declare type ShipmentDestinationType = "HOME" | "STORE" | "SERVICE_POINT" | "LOCKER";
1
+ export type ShipmentDestinationType = "HOME" | "STORE" | "SERVICE_POINT" | "LOCKER";
2
2
  export interface ShipmentListItem {
3
3
  shipment_reference: string;
4
4
  purchase_number: number;
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
- import { Purchase } from "../types/purchase";
2
+ import { PurchaseDetail } from "../types/purchase";
3
3
  interface PurchaseRowProps {
4
- purchase: Purchase;
4
+ purchase: PurchaseDetail;
5
5
  }
6
6
  export declare const PurchaseRow: React.FC<PurchaseRowProps>;
7
7
  export {};
@@ -1,8 +1,8 @@
1
1
  import React from "react";
2
- import { Receipt, ReceiptLine } from "../types/receipt";
2
+ import { Line, PurchaseDetail } from "../types/purchase";
3
3
  interface ReceiptCardProps {
4
- receipt: Receipt;
5
- refund?: (lines: ReceiptLine[]) => void;
4
+ purchase: PurchaseDetail;
5
+ refund?: (lines: Line[]) => void;
6
6
  }
7
7
  export declare const ReceiptCard: React.FC<ReceiptCardProps>;
8
8
  export {};
@@ -1,6 +1,7 @@
1
1
  import React from "react";
2
2
  import { ReceiptLine as ReceiptLineType } from "../types/receipt";
3
3
  interface ReceiptLineProps {
4
+ currency: string;
4
5
  line: ReceiptLineType;
5
6
  editable?: boolean;
6
7
  onSelect?: (selected: boolean) => void;
@@ -1,8 +1,9 @@
1
1
  import React from "react";
2
- import { ReceiptLine } from "../types/receipt";
2
+ import { Line } from "../types/purchase";
3
3
  export interface ReceiptTableProps {
4
- lines: ReceiptLine[];
4
+ currency: string;
5
+ lines: Line[];
5
6
  editable?: boolean;
6
- onSelect?: (selected: ReceiptLine[]) => void;
7
+ onSelect?: (selected: Line[]) => void;
7
8
  }
8
9
  export declare const ReceiptTable: React.FC<ReceiptTableProps>;
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- export declare type SearchInput = {
2
+ export type SearchInput = {
3
3
  email: string;
4
4
  } | {
5
5
  phone: string;
@@ -1,6 +1,6 @@
1
- import { Purchase } from "../../types/purchase";
2
1
  import { PageComponent } from "../../../../types";
2
+ import { PurchaseDetail } from "../../types/purchase";
3
3
  declare const PurchaseListPage: PageComponent<{
4
- results: Purchase[];
4
+ results: PurchaseDetail[];
5
5
  }>;
6
6
  export default PurchaseListPage;
@@ -1,18 +1,44 @@
1
1
  import { Receipt } from "./receipt";
2
- export interface Purchase {
3
- number: string;
2
+ export interface PurchaseDetail {
3
+ number: number;
4
4
  checkout_session?: string;
5
5
  main_payment_identifier?: string;
6
6
  date_initiated: string;
7
7
  date_confirmed: string;
8
- currency?: string;
8
+ currency: string;
9
9
  site_code: string;
10
10
  locale: string;
11
11
  country_code: string;
12
12
  email: string;
13
13
  phone?: string;
14
- }
15
- export interface PurchaseDetail {
16
- purchase: Purchase;
14
+ total_debit_amount: string;
15
+ total_remaining_amount: string;
16
+ total_discount_amount: string;
17
+ total_tax_amount: string;
17
18
  receipts: Receipt[];
19
+ accounts: {
20
+ reserved: string;
21
+ captured: string;
22
+ reverted: string;
23
+ } | null;
24
+ lines: Line[];
25
+ }
26
+ export interface Line {
27
+ line_number: number;
28
+ item_type: string;
29
+ title: string;
30
+ reference: string;
31
+ quantity: number;
32
+ unit_price: string;
33
+ total_amount: string;
34
+ debit_amount: string;
35
+ remaining_amount: string;
36
+ adjustments: Adjustment[];
37
+ }
38
+ export interface Adjustment {
39
+ adjustment_type: "CANCELLATION" | "RETURN" | "REFUND" | "DISCOUNT";
40
+ title: string;
41
+ receipt_number: number | null;
42
+ quantity: number;
43
+ total_amount: string;
18
44
  }
@@ -1,17 +1,15 @@
1
+ export declare enum ReceiptIntention {
2
+ Payment = 1,
3
+ Cancellation = 2,
4
+ Refund = 3
5
+ }
1
6
  export interface Receipt {
2
- number: string;
7
+ number: number | null;
3
8
  total_amount: string;
4
9
  total_discount_amount: string;
5
10
  total_tax_amount: string;
6
11
  date_settled?: string;
7
- /**
8
- * | | Intention |
9
- * | - | ------------ |
10
- * | 1 | payment |
11
- * | 2 | cancellation |
12
- * | 3 | refund |
13
- */
14
- intention: 1 | 2 | 3;
12
+ intention: ReceiptIntention;
15
13
  lines: ReceiptLine[];
16
14
  }
17
15
  export interface ReceiptLine {
@@ -2,9 +2,10 @@ import React from "react";
2
2
  import { RouteInfo } from "../contexts/RouterContext";
3
3
  import { PageComponent } from "../types";
4
4
  import { OpenAPI } from "openapi-types";
5
- export declare type RouterExtensionPageHit = PageComponent | Promise<PageComponent> | {
5
+ export type RouterExtensionPageHit = PageComponent | Promise<PageComponent> | {
6
6
  page: PageComponent | Promise<PageComponent>;
7
7
  request?: OpenAPI.Request;
8
+ defaultRequest?: OpenAPI.Request;
8
9
  };
9
10
  export interface RouterExtension {
10
11
  app: string;
@@ -1,11 +1,14 @@
1
1
  /// <reference types="react" />
2
2
  declare module "swagger-client";
3
- export declare type LogoType = boolean | string | React.ElementType;
4
- export declare type PageProps<T = unknown> = {
3
+ export type LogoType = boolean | string | React.ElementType;
4
+ export type PageProps<T = unknown> = {
5
5
  data: T;
6
6
  };
7
- export declare type PageComponent<T = unknown> = React.ComponentType<PageProps<T>>;
8
- export declare type NavOverrides = Record<string, {
7
+ export type PageComponent<T = unknown> = React.ComponentType<PageProps<T>> & {
8
+ requiredQuery?: URLSearchParams;
9
+ defaultQuery?: URLSearchParams;
10
+ };
11
+ export type NavOverrides = Record<string, {
9
12
  icon?: LogoType;
10
13
  title?: string;
11
14
  } | null | undefined | false>;
package/example/index.tsx CHANGED
@@ -1,20 +1,39 @@
1
- import React from "react";
2
- import ReactDOM from "react-dom";
3
1
  import * as Bananas from "bananas-commerce-admin";
2
+ import React from "react";
3
+ import ReactDOM from "react-dom/client";
4
4
 
5
- ReactDOM.render(
5
+ import { createTheme } from "@mui/material/styles";
6
+
7
+ ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render(
6
8
  <React.StrictMode>
7
9
  <Bananas.App
10
+ basename={process.env.BASE_URL}
8
11
  api={{
9
- schema: "http://localhost:8123/_/admin/api/v1/openapi.json",
10
- server: "http://localhost:8123/_/admin/api/v1/",
12
+ schema: "/_/admin/api/v1/openapi.json",
13
+ server: new URL("/_/admin/api/v1/", location.origin),
14
+ }}
15
+ nav={{
16
+ ...Bananas.pos.navigation,
17
+ ...Bananas.fulfillment.navigation,
11
18
  }}
12
- nav={{}}
13
- extensions={[Bananas.bananasRouterExtension, Bananas.posRouterExtension]}
19
+ extensions={[
20
+ Bananas.bananas.router,
21
+ Bananas.pos.router,
22
+ Bananas.fulfillment.router,
23
+ ]}
14
24
  pages={async (route) => {
15
25
  return (await import(`./pages/${route.page}`)).default;
16
26
  }}
27
+ theme={createTheme({
28
+ palette: {
29
+ primary: {
30
+ main: "#7b61ff",
31
+ },
32
+ secondary: {
33
+ main: "#00bcd4",
34
+ },
35
+ },
36
+ })}
17
37
  />
18
- </React.StrictMode>,
19
- document.getElementById("root") as HTMLElement,
38
+ </React.StrictMode>
20
39
  );