shutro-erp 0.3.5 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/dist/account_asset/.kosh/bindings.d.ts +22 -0
  2. package/dist/account_asset/.kosh/bindings.js +15 -0
  3. package/dist/account_asset/.kosh/schema.d.ts +1755 -0
  4. package/dist/account_asset/board.d.ts +61 -0
  5. package/dist/account_asset/board.js +86 -0
  6. package/dist/account_asset/books.d.ts +42 -0
  7. package/dist/account_asset/books.js +398 -0
  8. package/dist/account_asset/demo.d.ts +7 -0
  9. package/dist/account_asset/demo.js +72 -0
  10. package/dist/account_asset/index.d.ts +9 -0
  11. package/dist/account_asset/index.js +335 -0
  12. package/dist/account_asset/module.d.ts +7622 -0
  13. package/dist/account_asset/module.js +230 -0
  14. package/dist/account_budget/.kosh/bindings.d.ts +22 -0
  15. package/dist/account_budget/.kosh/bindings.js +15 -0
  16. package/dist/account_budget/.kosh/schema.d.ts +1767 -0
  17. package/dist/account_budget/budget.d.ts +5 -0
  18. package/dist/account_budget/budget.js +142 -0
  19. package/dist/account_budget/demo.d.ts +6 -0
  20. package/dist/account_budget/demo.js +30 -0
  21. package/dist/account_budget/index.d.ts +4 -0
  22. package/dist/account_budget/index.js +223 -0
  23. package/dist/account_budget/module.d.ts +13863 -0
  24. package/dist/account_budget/module.js +167 -0
  25. package/dist/account_portal/.kosh/bindings.js +1 -1
  26. package/dist/account_portal/.kosh/schema.d.ts +123 -4
  27. package/dist/account_portal/module.d.ts +146 -0
  28. package/dist/accounting/.kosh/bindings.js +1 -1
  29. package/dist/accounting/.kosh/schema.d.ts +123 -4
  30. package/dist/accounting/index.d.ts +1 -1
  31. package/dist/accounting/index.js +131 -3
  32. package/dist/accounting/module.d.ts +296 -0
  33. package/dist/accounting/module.js +32 -1
  34. package/dist/approvals/.kosh/bindings.d.ts +22 -0
  35. package/dist/approvals/.kosh/bindings.js +15 -0
  36. package/dist/approvals/.kosh/schema.d.ts +611 -0
  37. package/dist/approvals/index.d.ts +18 -0
  38. package/dist/approvals/index.js +302 -0
  39. package/dist/approvals/mails.d.ts +25 -0
  40. package/dist/approvals/mails.js +82 -0
  41. package/dist/approvals/module.d.ts +1 -0
  42. package/dist/approvals/module.js +12 -0
  43. package/dist/approvals/web/History.d.ts +4 -0
  44. package/dist/approvals/web/History.js +13 -0
  45. package/dist/approvals/web/Inbox.d.ts +9 -0
  46. package/dist/approvals/web/Inbox.js +114 -0
  47. package/dist/approvals/web/Mine.d.ts +7 -0
  48. package/dist/approvals/web/Mine.js +27 -0
  49. package/dist/approvals/web/index.d.ts +13 -0
  50. package/dist/approvals/web/index.js +22 -0
  51. package/dist/approvals/web/messages.d.ts +2 -0
  52. package/dist/approvals/web/messages.js +119 -0
  53. package/dist/approvals/web/shared.d.ts +59 -0
  54. package/dist/approvals/web/shared.js +46 -0
  55. package/dist/attendance/.kosh/bindings.d.ts +22 -0
  56. package/dist/attendance/.kosh/bindings.js +15 -0
  57. package/dist/attendance/.kosh/schema.d.ts +1048 -0
  58. package/dist/attendance/days.d.ts +96 -0
  59. package/dist/attendance/days.js +430 -0
  60. package/dist/attendance/demo.d.ts +7 -0
  61. package/dist/attendance/demo.js +58 -0
  62. package/dist/attendance/index.d.ts +4 -0
  63. package/dist/attendance/index.js +513 -0
  64. package/dist/attendance/module.d.ts +3969 -0
  65. package/dist/attendance/module.js +412 -0
  66. package/dist/attendance/routes.d.ts +16 -0
  67. package/dist/attendance/routes.js +266 -0
  68. package/dist/attendance/web/Check.d.ts +8 -0
  69. package/dist/attendance/web/Check.js +40 -0
  70. package/dist/attendance/web/Kiosk.d.ts +8 -0
  71. package/dist/attendance/web/Kiosk.js +62 -0
  72. package/dist/attendance/web/PinButton.d.ts +7 -0
  73. package/dist/attendance/web/PinButton.js +29 -0
  74. package/dist/attendance/web/index.d.ts +13 -0
  75. package/dist/attendance/web/index.js +22 -0
  76. package/dist/attendance/web/messages.d.ts +2 -0
  77. package/dist/attendance/web/messages.js +61 -0
  78. package/dist/cli/init.js +32 -0
  79. package/dist/cli/templates.d.ts +1 -1
  80. package/dist/cli/templates.js +89 -0
  81. package/dist/contacts/module.js +13 -2
  82. package/dist/crm/.kosh/bindings.js +1 -1
  83. package/dist/crm/.kosh/schema.d.ts +2 -1
  84. package/dist/crm/module.d.ts +2 -0
  85. package/dist/crm/module.js +2 -1
  86. package/dist/documents/.kosh/bindings.d.ts +22 -0
  87. package/dist/documents/.kosh/bindings.js +15 -0
  88. package/dist/documents/.kosh/schema.d.ts +862 -0
  89. package/dist/documents/demo.d.ts +6 -0
  90. package/dist/documents/demo.js +22 -0
  91. package/dist/documents/documents.d.ts +98 -0
  92. package/dist/documents/documents.js +318 -0
  93. package/dist/documents/index.d.ts +30 -0
  94. package/dist/documents/index.js +442 -0
  95. package/dist/documents/module.d.ts +2781 -0
  96. package/dist/documents/module.js +214 -0
  97. package/dist/documents/web/Versions.d.ts +7 -0
  98. package/dist/documents/web/Versions.js +45 -0
  99. package/dist/documents/web/index.d.ts +11 -0
  100. package/dist/documents/web/index.js +16 -0
  101. package/dist/documents/web/messages.d.ts +2 -0
  102. package/dist/documents/web/messages.js +21 -0
  103. package/dist/event_account/.kosh/bindings.js +1 -1
  104. package/dist/event_account/.kosh/schema.d.ts +123 -4
  105. package/dist/event_account/module.d.ts +146 -0
  106. package/dist/expense/.kosh/bindings.d.ts +22 -0
  107. package/dist/expense/.kosh/bindings.js +15 -0
  108. package/dist/expense/.kosh/schema.d.ts +1299 -0
  109. package/dist/expense/demo.d.ts +7 -0
  110. package/dist/expense/demo.js +69 -0
  111. package/dist/expense/index.d.ts +3 -0
  112. package/dist/expense/index.js +495 -0
  113. package/dist/expense/module.d.ts +4747 -0
  114. package/dist/expense/module.js +647 -0
  115. package/dist/expense_account/.kosh/bindings.d.ts +22 -0
  116. package/dist/expense_account/.kosh/bindings.js +15 -0
  117. package/dist/expense_account/.kosh/schema.d.ts +1936 -0
  118. package/dist/expense_account/index.d.ts +3 -0
  119. package/dist/expense_account/index.js +74 -0
  120. package/dist/expense_account/module.d.ts +9153 -0
  121. package/dist/expense_account/module.js +318 -0
  122. package/dist/helpdesk/.kosh/bindings.d.ts +22 -0
  123. package/dist/helpdesk/.kosh/bindings.js +15 -0
  124. package/dist/helpdesk/.kosh/schema.d.ts +885 -0
  125. package/dist/helpdesk/demo.d.ts +7 -0
  126. package/dist/helpdesk/demo.js +65 -0
  127. package/dist/helpdesk/hours.d.ts +17 -0
  128. package/dist/helpdesk/hours.js +94 -0
  129. package/dist/helpdesk/index.d.ts +10 -0
  130. package/dist/helpdesk/index.js +461 -0
  131. package/dist/helpdesk/module.d.ts +2940 -0
  132. package/dist/helpdesk/module.js +326 -0
  133. package/dist/helpdesk/routes.d.ts +12 -0
  134. package/dist/helpdesk/routes.js +132 -0
  135. package/dist/helpdesk/sla.d.ts +37 -0
  136. package/dist/helpdesk/sla.js +226 -0
  137. package/dist/hr/index.d.ts +1 -1
  138. package/dist/hr/index.js +1 -1
  139. package/dist/l10n_bd/.kosh/bindings.js +1 -1
  140. package/dist/l10n_bd/.kosh/schema.d.ts +123 -4
  141. package/dist/l10n_bd/module.d.ts +146 -0
  142. package/dist/l10n_bd_payroll/.kosh/bindings.d.ts +22 -0
  143. package/dist/l10n_bd_payroll/.kosh/bindings.js +15 -0
  144. package/dist/l10n_bd_payroll/.kosh/schema.d.ts +2312 -0
  145. package/dist/l10n_bd_payroll/data.d.ts +47 -0
  146. package/dist/l10n_bd_payroll/data.js +347 -0
  147. package/dist/l10n_bd_payroll/index.d.ts +4 -0
  148. package/dist/l10n_bd_payroll/index.js +24 -0
  149. package/dist/l10n_bd_payroll/module.d.ts +12932 -0
  150. package/dist/l10n_bd_payroll/module.js +86 -0
  151. package/dist/l10n_in/.kosh/bindings.js +1 -1
  152. package/dist/l10n_in/.kosh/schema.d.ts +123 -4
  153. package/dist/l10n_in/module.d.ts +147 -0
  154. package/dist/mail/inbound/handle.js +6 -1
  155. package/dist/maintenance_stock/.kosh/bindings.js +1 -1
  156. package/dist/maintenance_stock/.kosh/schema.d.ts +77 -2
  157. package/dist/maintenance_stock/module.d.ts +788 -66
  158. package/dist/modules-sdk/index.d.ts +1 -1
  159. package/dist/modules-sdk/manifest.d.ts +39 -2
  160. package/dist/mrp/.kosh/bindings.js +1 -1
  161. package/dist/mrp/.kosh/schema.d.ts +77 -2
  162. package/dist/mrp/index.d.ts +1 -1
  163. package/dist/mrp/index.js +2 -1
  164. package/dist/mrp/module.d.ts +781 -54
  165. package/dist/mrp/module.js +64 -2
  166. package/dist/mrp_account/.kosh/bindings.js +1 -1
  167. package/dist/mrp_account/.kosh/schema.d.ts +198 -5
  168. package/dist/mrp_account/module.d.ts +4852 -2541
  169. package/dist/payment/.kosh/bindings.js +1 -1
  170. package/dist/payment/.kosh/schema.d.ts +125 -5
  171. package/dist/payment/index.d.ts +41 -0
  172. package/dist/payment/index.js +131 -74
  173. package/dist/payment/module.d.ts +210 -6
  174. package/dist/payment/module.js +19 -3
  175. package/dist/payment/settle.js +10 -1
  176. package/dist/payroll/.kosh/bindings.d.ts +22 -0
  177. package/dist/payroll/.kosh/bindings.js +15 -0
  178. package/dist/payroll/.kosh/schema.d.ts +1390 -0
  179. package/dist/payroll/compute.d.ts +35 -0
  180. package/dist/payroll/compute.js +398 -0
  181. package/dist/payroll/demo.d.ts +55 -0
  182. package/dist/payroll/demo.js +121 -0
  183. package/dist/payroll/formula.d.ts +62 -0
  184. package/dist/payroll/formula.js +320 -0
  185. package/dist/payroll/index.d.ts +230 -0
  186. package/dist/payroll/index.js +713 -0
  187. package/dist/payroll/module.d.ts +9390 -0
  188. package/dist/payroll/module.js +606 -0
  189. package/dist/payroll/routes.d.ts +10 -0
  190. package/dist/payroll/routes.js +112 -0
  191. package/dist/payroll_account/.kosh/bindings.d.ts +22 -0
  192. package/dist/payroll_account/.kosh/bindings.js +15 -0
  193. package/dist/payroll_account/.kosh/schema.d.ts +2308 -0
  194. package/dist/payroll_account/index.d.ts +3 -0
  195. package/dist/payroll_account/index.js +40 -0
  196. package/dist/payroll_account/module.d.ts +12396 -0
  197. package/dist/payroll_account/module.js +256 -0
  198. package/dist/permissions/approvals.d.ts +131 -9
  199. package/dist/permissions/approvals.js +662 -57
  200. package/dist/permissions/index.d.ts +1 -1
  201. package/dist/permissions/index.js +2 -2
  202. package/dist/permissions/models.js +191 -12
  203. package/dist/permissions/routes.d.ts +6 -1
  204. package/dist/permissions/routes.js +37 -4
  205. package/dist/permissions/web/ApprovalPanel.d.ts +5 -4
  206. package/dist/permissions/web/ApprovalPanel.js +39 -13
  207. package/dist/permissions/web/index.d.ts +6 -4
  208. package/dist/permissions/web/index.js +13 -4
  209. package/dist/permissions/web/messages.d.ts +2 -0
  210. package/dist/permissions/web/messages.js +43 -0
  211. package/dist/portal/index.js +1 -1
  212. package/dist/pos/.kosh/bindings.js +1 -1
  213. package/dist/pos/.kosh/schema.d.ts +123 -4
  214. package/dist/pos/index.js +4 -0
  215. package/dist/pos/module.d.ts +147 -0
  216. package/dist/pos_stock/.kosh/bindings.js +1 -1
  217. package/dist/pos_stock/.kosh/schema.d.ts +198 -5
  218. package/dist/pos_stock/module.d.ts +914 -46
  219. package/dist/product/.kosh/bindings.js +1 -1
  220. package/dist/product/.kosh/schema.d.ts +2 -1
  221. package/dist/product/index.js +13 -0
  222. package/dist/product/module.d.ts +2 -0
  223. package/dist/product/module.js +2 -1
  224. package/dist/project/.kosh/bindings.js +1 -1
  225. package/dist/project/.kosh/schema.d.ts +672 -1
  226. package/dist/project/index.d.ts +3 -1
  227. package/dist/project/index.js +901 -14
  228. package/dist/project/module.d.ts +9892 -390
  229. package/dist/project/module.js +1530 -13
  230. package/dist/project/routes.d.ts +44 -0
  231. package/dist/project/routes.js +314 -0
  232. package/dist/project/schedule.d.ts +72 -0
  233. package/dist/project/schedule.js +192 -0
  234. package/dist/project/web/Refresh.d.ts +8 -0
  235. package/dist/project/web/Refresh.js +29 -0
  236. package/dist/project/web/Schedule.d.ts +9 -0
  237. package/dist/project/web/Schedule.js +93 -0
  238. package/dist/project/web/Structure.d.ts +8 -0
  239. package/dist/project/web/Structure.js +86 -0
  240. package/dist/project/web/Workload.d.ts +8 -0
  241. package/dist/project/web/Workload.js +43 -0
  242. package/dist/project/web/index.d.ts +14 -0
  243. package/dist/project/web/index.js +25 -0
  244. package/dist/project/web/messages.d.ts +2 -0
  245. package/dist/project/web/messages.js +85 -0
  246. package/dist/project_account/.kosh/bindings.d.ts +22 -0
  247. package/dist/project_account/.kosh/bindings.js +15 -0
  248. package/dist/project_account/.kosh/schema.d.ts +2241 -0
  249. package/dist/project_account/index.d.ts +3 -0
  250. package/dist/project_account/index.js +27 -0
  251. package/dist/project_account/module.d.ts +11539 -0
  252. package/dist/project_account/module.js +76 -0
  253. package/dist/project_portal/.kosh/bindings.js +1 -1
  254. package/dist/project_portal/.kosh/schema.d.ts +672 -1
  255. package/dist/project_portal/module.d.ts +4798 -129
  256. package/dist/project_purchase/.kosh/bindings.d.ts +22 -0
  257. package/dist/project_purchase/.kosh/bindings.js +15 -0
  258. package/dist/project_purchase/.kosh/schema.d.ts +2320 -0
  259. package/dist/project_purchase/index.d.ts +9 -0
  260. package/dist/project_purchase/index.js +22 -0
  261. package/dist/project_purchase/module.d.ts +25147 -0
  262. package/dist/project_purchase/module.js +56 -0
  263. package/dist/purchase/.kosh/bindings.js +1 -1
  264. package/dist/purchase/.kosh/schema.d.ts +97 -4
  265. package/dist/purchase/module.d.ts +13 -2
  266. package/dist/purchase/module.js +10 -1
  267. package/dist/purchase_account/.kosh/bindings.js +1 -1
  268. package/dist/purchase_account/.kosh/schema.d.ts +126 -6
  269. package/dist/purchase_account/index.js +1 -0
  270. package/dist/purchase_account/module.d.ts +176 -1
  271. package/dist/purchase_account/module.js +13 -2
  272. package/dist/purchase_portal/.kosh/bindings.js +1 -1
  273. package/dist/purchase_portal/.kosh/schema.d.ts +97 -4
  274. package/dist/purchase_portal/module.d.ts +6 -1
  275. package/dist/purchase_stock/.kosh/bindings.js +1 -1
  276. package/dist/purchase_stock/.kosh/schema.d.ts +174 -5
  277. package/dist/purchase_stock/index.d.ts +1 -1
  278. package/dist/purchase_stock/index.js +9 -2
  279. package/dist/purchase_stock/module.d.ts +840 -68
  280. package/dist/purchase_stock/module.js +242 -6
  281. package/dist/purchase_stock_account/.kosh/bindings.js +1 -1
  282. package/dist/purchase_stock_account/.kosh/schema.d.ts +203 -7
  283. package/dist/purchase_stock_account/module.d.ts +8163 -5514
  284. package/dist/purchase_stock_account/module.js +11 -5
  285. package/dist/recruitment/.kosh/bindings.js +1 -1
  286. package/dist/recruitment/.kosh/schema.d.ts +2 -1
  287. package/dist/recruitment/module.d.ts +2 -0
  288. package/dist/recruitment/module.js +2 -1
  289. package/dist/sale_account/.kosh/bindings.js +1 -1
  290. package/dist/sale_account/.kosh/schema.d.ts +123 -4
  291. package/dist/sale_account/module.d.ts +147 -0
  292. package/dist/sale_portal/.kosh/bindings.js +1 -1
  293. package/dist/sale_portal/.kosh/schema.d.ts +2 -1
  294. package/dist/sale_portal/module.d.ts +1 -0
  295. package/dist/sale_project/.kosh/bindings.js +1 -1
  296. package/dist/sale_project/.kosh/schema.d.ts +673 -1
  297. package/dist/sale_project/module.d.ts +4800 -129
  298. package/dist/sale_project/module.js +17 -1
  299. package/dist/sale_stock/.kosh/bindings.js +1 -1
  300. package/dist/sale_stock/.kosh/schema.d.ts +77 -2
  301. package/dist/sale_stock/module.d.ts +789 -66
  302. package/dist/sales/.kosh/bindings.js +1 -1
  303. package/dist/sales/.kosh/schema.d.ts +2 -1
  304. package/dist/sales/index.js +4 -0
  305. package/dist/sales/module.d.ts +1 -0
  306. package/dist/sign/.kosh/bindings.d.ts +22 -0
  307. package/dist/sign/.kosh/bindings.js +15 -0
  308. package/dist/sign/.kosh/schema.d.ts +990 -0
  309. package/dist/sign/index.d.ts +14 -0
  310. package/dist/sign/index.js +350 -0
  311. package/dist/sign/module.d.ts +4478 -0
  312. package/dist/sign/module.js +158 -0
  313. package/dist/sign/sign.d.ts +82 -0
  314. package/dist/sign/sign.js +474 -0
  315. package/dist/stock/.kosh/bindings.js +1 -1
  316. package/dist/stock/.kosh/schema.d.ts +77 -2
  317. package/dist/stock/demo.d.ts +2 -1
  318. package/dist/stock/demo.js +28 -1
  319. package/dist/stock/index.d.ts +2 -1
  320. package/dist/stock/index.js +233 -4
  321. package/dist/stock/module.d.ts +2363 -837
  322. package/dist/stock/module.js +569 -14
  323. package/dist/stock/replenish.d.ts +38 -0
  324. package/dist/stock/replenish.js +176 -0
  325. package/dist/stock/web/Replenishment.d.ts +8 -0
  326. package/dist/stock/web/Replenishment.js +84 -0
  327. package/dist/stock/web/index.d.ts +4 -2
  328. package/dist/stock/web/index.js +6 -2
  329. package/dist/stock/web/messages.js +52 -0
  330. package/dist/stock_account/.kosh/bindings.js +1 -1
  331. package/dist/stock_account/.kosh/schema.d.ts +198 -5
  332. package/dist/stock_account/index.js +10 -0
  333. package/dist/stock_account/module.d.ts +969 -101
  334. package/dist/trade_finance/index.js +2 -0
  335. package/dist/trade_finance/module.js +2 -0
  336. package/dist/trade_finance_account/.kosh/bindings.js +1 -1
  337. package/dist/trade_finance_account/.kosh/schema.d.ts +123 -4
  338. package/dist/trade_finance_account/index.js +1 -0
  339. package/dist/trade_finance_account/module.d.ts +146 -0
  340. package/dist/trade_finance_account/module.js +1 -0
  341. package/dist/trade_finance_purchase/.kosh/bindings.js +1 -1
  342. package/dist/trade_finance_purchase/.kosh/schema.d.ts +97 -4
  343. package/dist/trade_finance_purchase/module.d.ts +6 -1
  344. package/dist/trade_finance_sale/.kosh/bindings.js +1 -1
  345. package/dist/trade_finance_sale/.kosh/schema.d.ts +2 -1
  346. package/dist/trade_finance_sale/module.d.ts +1 -0
  347. package/dist/ui/app.js +24 -12
  348. package/dist/ui/components/AppIcon.js +8 -1
  349. package/dist/ui/i18n/messages.d.ts +4 -0
  350. package/dist/ui/i18n/messages.js +8 -0
  351. package/dist/ui/views/FormView.js +4 -2
  352. package/dist/ui/views/KanbanView.js +9 -1
  353. package/dist/ui/views/ListView.js +4 -2
  354. package/dist/ui/views/widgets.js +7 -1
  355. package/dist/website/index.js +1 -0
  356. package/dist/website/module.js +1 -0
  357. package/dist/website_crm/.kosh/bindings.js +1 -1
  358. package/dist/website_crm/.kosh/schema.d.ts +2 -1
  359. package/dist/website_crm/module.d.ts +1 -0
  360. package/dist/website_sale/.kosh/bindings.d.ts +22 -0
  361. package/dist/website_sale/.kosh/bindings.js +15 -0
  362. package/dist/website_sale/.kosh/schema.d.ts +2284 -0
  363. package/dist/website_sale/couriers.d.ts +50 -0
  364. package/dist/website_sale/couriers.js +59 -0
  365. package/dist/website_sale/demo.d.ts +7 -0
  366. package/dist/website_sale/demo.js +90 -0
  367. package/dist/website_sale/growth.d.ts +31 -0
  368. package/dist/website_sale/growth.js +163 -0
  369. package/dist/website_sale/index.d.ts +49 -0
  370. package/dist/website_sale/index.js +538 -0
  371. package/dist/website_sale/module.d.ts +22027 -0
  372. package/dist/website_sale/module.js +397 -0
  373. package/dist/website_sale/shipments.d.ts +16 -0
  374. package/dist/website_sale/shipments.js +113 -0
  375. package/dist/website_sale/shop.d.ts +81 -0
  376. package/dist/website_sale/shop.js +649 -0
  377. package/dist/website_sale_stock/.kosh/bindings.d.ts +22 -0
  378. package/dist/website_sale_stock/.kosh/bindings.js +15 -0
  379. package/dist/website_sale_stock/.kosh/schema.d.ts +2681 -0
  380. package/dist/website_sale_stock/index.d.ts +9 -0
  381. package/dist/website_sale_stock/index.js +20 -0
  382. package/dist/website_sale_stock/module.d.ts +24998 -0
  383. package/dist/website_sale_stock/module.js +28 -0
  384. package/package.json +83 -2
@@ -1,13 +1,16 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: d9f8e844230b1ef6
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: a7db9609fdcaa63d
2
2
  // Schema view of module `purchase_stock` (RFC 0002 §7.7): the models it owns or depends on, with the extensions it can see.
3
3
  import type { F } from '../../server/orm.js';
4
4
 
5
5
  /** Model name → model type (RFC 0002 §7.7). */
6
6
  export interface SchemaView {
7
7
  readonly 'account.tax': AccountTax;
8
+ readonly 'approval.delegation': ApprovalDelegation;
8
9
  readonly 'approval.level': ApprovalLevel;
10
+ readonly 'approval.link': ApprovalLink;
9
11
  readonly 'approval.policy': ApprovalPolicy;
10
12
  readonly 'approval.request': ApprovalRequest;
13
+ readonly 'approval.vote': ApprovalVote;
11
14
  readonly 'audit.event': AuditEvent;
12
15
  readonly 'auth.api_key': AuthApiKey;
13
16
  readonly 'auth.credential': AuthCredential;
@@ -45,7 +48,9 @@ export interface SchemaView {
45
48
  readonly 'stock.lot.line': StockLotLine;
46
49
  readonly 'stock.move': StockMove;
47
50
  readonly 'stock.picking': StockPicking;
51
+ readonly 'stock.putaway': StockPutaway;
48
52
  readonly 'stock.quant': StockQuant;
53
+ readonly 'stock.reorder': StockReorder;
49
54
  readonly 'stock.reservation': StockReservation;
50
55
  readonly 'stock.scrap': StockScrap;
51
56
  readonly 'stock.warehouse': StockWarehouse;
@@ -81,6 +86,29 @@ export interface AccountTax {
81
86
  export interface AccountTaxMethods extends F.Methods<typeof import('../../product/index.js').productShutro, 'account.tax'> {
82
87
  }
83
88
 
89
+ /** `approval.delegation` (owner: permissions). */
90
+ export interface ApprovalDelegation {
91
+ readonly name: 'approval.delegation';
92
+ readonly fields: {
93
+ readonly id: F.Id<'approval.delegation'>;
94
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
95
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
96
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
97
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
98
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
99
+ readonly user: F.Many2one<'res.users', { readonly required: true; readonly default: true }>;
100
+ readonly delegate: F.Many2one<'res.users', { readonly required: true }>;
101
+ readonly dateFrom: F.DateOnly<{ readonly required: true }>;
102
+ readonly dateTo: F.DateOnly<{ readonly required: true }>;
103
+ readonly note: F.Char;
104
+ };
105
+ readonly methods: ApprovalDelegationMethods;
106
+ }
107
+
108
+ /** Methods of `approval.delegation`: declared ones and transitions. */
109
+ export interface ApprovalDelegationMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.delegation'> {
110
+ }
111
+
84
112
  /** `approval.level` (owner: permissions). */
85
113
  export interface ApprovalLevel {
86
114
  readonly name: 'approval.level';
@@ -95,7 +123,14 @@ export interface ApprovalLevel {
95
123
  readonly sequence: F.Integer<{ readonly default: true }>;
96
124
  readonly name: F.Char<{ readonly required: true }>;
97
125
  readonly condition: F.Json;
98
- readonly approverRole: F.Char<{ readonly required: true }>;
126
+ readonly approverKind: F.Selection<'role' | 'users' | 'manager' | 'field', { readonly required: true; readonly default: true }>;
127
+ readonly approverRole: F.Char;
128
+ readonly approverUsers: F.Many2many<'res.users', { readonly required: true }>;
129
+ readonly approverField: F.Char;
130
+ readonly quorum: F.Selection<'any' | 'all' | 'count', { readonly required: true; readonly default: true }>;
131
+ readonly quorumCount: F.Integer;
132
+ readonly deadlineHours: F.Integer;
133
+ readonly escalateRole: F.Char;
99
134
  };
100
135
  readonly methods: ApprovalLevelMethods;
101
136
  }
@@ -104,6 +139,29 @@ export interface ApprovalLevel {
104
139
  export interface ApprovalLevelMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.level'> {
105
140
  }
106
141
 
142
+ /** `approval.link` (owner: permissions). */
143
+ export interface ApprovalLink {
144
+ readonly name: 'approval.link';
145
+ readonly fields: {
146
+ readonly id: F.Id<'approval.link'>;
147
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
148
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
149
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
150
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
151
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
152
+ readonly request: F.Many2one<'approval.request', { readonly required: true }>;
153
+ readonly user: F.Many2one<'res.users', { readonly required: true }>;
154
+ readonly tokenHash: F.Char<{ readonly required: true }>;
155
+ readonly expiresAt: F.Datetime<{ readonly required: true }>;
156
+ readonly usedAt: F.Datetime;
157
+ };
158
+ readonly methods: ApprovalLinkMethods;
159
+ }
160
+
161
+ /** Methods of `approval.link`: declared ones and transitions. */
162
+ export interface ApprovalLinkMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.link'> {
163
+ }
164
+
107
165
  /** `approval.policy` (owner: permissions). */
108
166
  export interface ApprovalPolicy {
109
167
  readonly name: 'approval.policy';
@@ -121,6 +179,9 @@ export interface ApprovalPolicy {
121
179
  readonly company: F.Many2one<'res.company'>;
122
180
  readonly onApproved: F.Char;
123
181
  readonly onRejected: F.Char;
182
+ readonly onSentBack: F.Char;
183
+ readonly onWithdrawn: F.Char;
184
+ readonly reasonRequired: F.Bool<{ readonly required: true; readonly default: true }>;
124
185
  readonly levels: F.One2many<'approval.level', { readonly required: true }>;
125
186
  };
126
187
  readonly methods: ApprovalPolicyMethods;
@@ -147,8 +208,16 @@ export interface ApprovalRequest {
147
208
  readonly targetModel: F.Char<{ readonly required: true }>;
148
209
  readonly targetId: F.Integer<{ readonly required: true }>;
149
210
  readonly company: F.Many2one<'res.company'>;
150
- readonly approverRole: F.Char<{ readonly required: true }>;
151
- readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'cancelled', { readonly required: true; readonly default: true }>;
211
+ readonly approverRole: F.Char;
212
+ readonly approvers: F.Many2many<'res.users', { readonly required: true }>;
213
+ readonly required: F.Integer<{ readonly required: true; readonly default: true }>;
214
+ readonly round: F.Integer<{ readonly required: true; readonly default: true }>;
215
+ readonly votes: F.One2many<'approval.vote', { readonly required: true }>;
216
+ readonly dueAt: F.Datetime;
217
+ readonly remindedAt: F.Datetime;
218
+ readonly escalatedTo: F.Char;
219
+ readonly escalatedAt: F.Datetime;
220
+ readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'sent_back' | 'cancelled', { readonly required: true; readonly default: true }>;
152
221
  readonly requestedBy: F.Many2one<'res.users'>;
153
222
  readonly decidedBy: F.Many2one<'res.users'>;
154
223
  readonly decidedAt: F.Datetime;
@@ -161,6 +230,31 @@ export interface ApprovalRequest {
161
230
  export interface ApprovalRequestMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.request'> {
162
231
  }
163
232
 
233
+ /** `approval.vote` (owner: permissions). */
234
+ export interface ApprovalVote {
235
+ readonly name: 'approval.vote';
236
+ readonly fields: {
237
+ readonly id: F.Id<'approval.vote'>;
238
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
239
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
240
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
241
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
242
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
243
+ readonly request: F.Many2one<'approval.request', { readonly required: true }>;
244
+ readonly user: F.Many2one<'res.users', { readonly required: true }>;
245
+ readonly decision: F.Selection<'approve' | 'reject' | 'send_back', { readonly required: true }>;
246
+ readonly comment: F.Text;
247
+ readonly at: F.Datetime<{ readonly required: true }>;
248
+ readonly onBehalfOf: F.Many2one<'res.users'>;
249
+ readonly ip: F.Char;
250
+ };
251
+ readonly methods: ApprovalVoteMethods;
252
+ }
253
+
254
+ /** Methods of `approval.vote`: declared ones and transitions. */
255
+ export interface ApprovalVoteMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.vote'> {
256
+ }
257
+
164
258
  /** `audit.event` (owner: base). */
165
259
  export interface AuditEvent {
166
260
  readonly name: 'audit.event';
@@ -684,6 +778,7 @@ export interface ProductCategory {
684
778
  readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
685
779
  readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
686
780
  readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
781
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
687
782
  readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
688
783
  readonly parent: F.Many2one<'product.category'>;
689
784
  };
@@ -761,6 +856,8 @@ export interface PurchaseOrder {
761
856
  readonly amountTotal: F.Monetary<'currency', { readonly readonly: true; readonly compute: true; readonly store: true }>;
762
857
  readonly state: F.State<'draft' | 'sent' | 'to_approve' | 'purchase' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
763
858
  readonly receipts: F.One2many<'stock.picking', { readonly required: true }>; // purchase_stock
859
+ readonly dropship: F.Bool<{ readonly required: true; readonly default: true }>; // purchase_stock
860
+ readonly warehouse: F.Many2one<'stock.warehouse'>; // purchase_stock
764
861
  readonly receiptState: F.Selection<'nothing' | 'to_receive' | 'partial' | 'received', { readonly readonly: true; readonly compute: true; readonly store: true }>; // purchase_stock
765
862
  };
766
863
  readonly methods: PurchaseOrderMethods;
@@ -1024,6 +1121,7 @@ export interface StockLocation {
1024
1121
  readonly children: F.One2many<'stock.location', { readonly required: true }>;
1025
1122
  readonly warehouse: F.Many2one<'stock.warehouse'>;
1026
1123
  readonly usage: F.Selection<'internal' | 'vendor' | 'customer' | 'adjustment' | 'production' | 'transit', { readonly required: true; readonly default: true }>;
1124
+ readonly step: F.Selection<'input' | 'quality' | 'packing' | 'output'>;
1027
1125
  readonly fullName: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
1028
1126
  };
1029
1127
  readonly methods: StockLocationMethods;
@@ -1043,6 +1141,7 @@ export interface StockLot {
1043
1141
  readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
1044
1142
  readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
1045
1143
  readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
1144
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
1046
1145
  readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
1047
1146
  readonly name: F.Char<{ readonly required: true }>;
1048
1147
  readonly product: F.Many2one<'product.product', { readonly required: true }>;
@@ -1101,6 +1200,8 @@ export interface StockMove {
1101
1200
  readonly quantityDone: F.Decimal;
1102
1201
  readonly doneQty: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
1103
1202
  readonly restrictLot: F.Many2one<'stock.lot'>;
1203
+ readonly procurement: F.Char;
1204
+ readonly destination: F.Many2one<'stock.location'>;
1104
1205
  readonly reservations: F.One2many<'stock.reservation', { readonly required: true }>;
1105
1206
  readonly reserved: F.Decimal<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
1106
1207
  readonly purchaseLine: F.Many2one<'purchase.order.line'>; // purchase_stock
@@ -1124,7 +1225,7 @@ export interface StockPicking {
1124
1225
  readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
1125
1226
  readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
1126
1227
  readonly name: F.Char<{ readonly required: true; readonly readonly: true; readonly sequence: true }>;
1127
- readonly kind: F.Selection<'receipt' | 'delivery' | 'internal' | 'adjustment' | 'production', { readonly required: true; readonly default: true }>;
1228
+ readonly kind: F.Selection<'receipt' | 'delivery' | 'internal' | 'adjustment' | 'production' | 'dropship', { readonly required: true; readonly default: true }>;
1128
1229
  readonly partner: F.Many2one<'res.partner'>;
1129
1230
  readonly warehouse: F.Many2one<'stock.warehouse'>;
1130
1231
  readonly source: F.Many2one<'stock.location', { readonly required: true }>;
@@ -1138,6 +1239,8 @@ export interface StockPicking {
1138
1239
  readonly count: F.Many2one<'stock.count'>;
1139
1240
  readonly backorderOf: F.Many2one<'stock.picking'>;
1140
1241
  readonly backorders: F.One2many<'stock.picking', { readonly required: true }>;
1242
+ readonly next: F.Many2one<'stock.picking'>;
1243
+ readonly previousSteps: F.One2many<'stock.picking', { readonly required: true }>;
1141
1244
  readonly availability: F.Selection<'none' | 'partial' | 'full', { readonly readonly: true; readonly compute: true; readonly store: true }>;
1142
1245
  readonly status: F.Selection<'draft' | 'waiting' | 'ready' | 'done' | 'cancelled', { readonly readonly: true; readonly compute: true; readonly store: true }>;
1143
1246
  readonly state: F.State<'draft' | 'confirmed' | 'done' | 'cancel', { readonly required: true; readonly readonly: true; readonly default: true }>;
@@ -1156,6 +1259,31 @@ export interface StockPickingMethods extends F.Methods<typeof import('../../stoc
1156
1259
  readonly 'validate': () => Promise<void>;
1157
1260
  }
1158
1261
 
1262
+ /** `stock.putaway` (owner: stock). */
1263
+ export interface StockPutaway {
1264
+ readonly name: 'stock.putaway';
1265
+ readonly fields: {
1266
+ readonly id: F.Id<'stock.putaway'>;
1267
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
1268
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
1269
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
1270
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
1271
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
1272
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
1273
+ readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
1274
+ readonly location: F.Many2one<'stock.location', { readonly required: true }>;
1275
+ readonly product: F.Many2one<'product.product'>;
1276
+ readonly category: F.Many2one<'product.category'>;
1277
+ readonly destination: F.Many2one<'stock.location', { readonly required: true }>;
1278
+ readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
1279
+ };
1280
+ readonly methods: StockPutawayMethods;
1281
+ }
1282
+
1283
+ /** Methods of `stock.putaway`: declared ones and transitions. */
1284
+ export interface StockPutawayMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.putaway'> {
1285
+ }
1286
+
1159
1287
  /** `stock.quant` (owner: stock). */
1160
1288
  export interface StockQuant {
1161
1289
  readonly name: 'stock.quant';
@@ -1182,6 +1310,45 @@ export interface StockQuant {
1182
1310
  export interface StockQuantMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.quant'> {
1183
1311
  }
1184
1312
 
1313
+ /** `stock.reorder` (owner: stock; extended by: purchase_stock). */
1314
+ export interface StockReorder {
1315
+ readonly name: 'stock.reorder';
1316
+ readonly fields: {
1317
+ readonly id: F.Id<'stock.reorder'>;
1318
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
1319
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
1320
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
1321
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
1322
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
1323
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
1324
+ readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
1325
+ readonly name: F.Char<{ readonly readonly: true; readonly compute: true; readonly store: true }>;
1326
+ readonly product: F.Many2one<'product.product', { readonly required: true }>;
1327
+ readonly warehouse: F.Many2one<'stock.warehouse', { readonly required: true }>;
1328
+ readonly minimum: F.Decimal<{ readonly required: true; readonly default: true }>;
1329
+ readonly maximum: F.Decimal<{ readonly required: true; readonly default: true }>;
1330
+ readonly multiple: F.Decimal<{ readonly required: true; readonly default: true }>;
1331
+ readonly leadDays: F.Integer<{ readonly required: true; readonly default: true }>;
1332
+ readonly method: F.Selection<'buy' | 'make' | 'transfer' | 'dropship', { readonly required: true; readonly default: true }>;
1333
+ readonly trigger: F.Selection<'minmax' | 'order', { readonly required: true; readonly default: true }>;
1334
+ readonly vendor: F.Many2one<'res.partner'>;
1335
+ readonly sourceWarehouse: F.Many2one<'stock.warehouse'>;
1336
+ readonly auto: F.Bool<{ readonly required: true; readonly default: true }>;
1337
+ readonly snoozedUntil: F.DateOnly;
1338
+ readonly onHand: F.Decimal;
1339
+ readonly forecast: F.Decimal;
1340
+ readonly proposed: F.Decimal;
1341
+ readonly explanation: F.Text;
1342
+ readonly refreshedAt: F.Datetime;
1343
+ readonly lastOrder: F.Char;
1344
+ };
1345
+ readonly methods: StockReorderMethods;
1346
+ }
1347
+
1348
+ /** Methods of `stock.reorder`: declared ones and transitions. */
1349
+ export interface StockReorderMethods extends F.Methods<typeof import('../../stock/index.js').stockShutro, 'stock.reorder'>, F.Methods<typeof import('../module.js').purchaseStockShutro, 'stock.reorder'> {
1350
+ }
1351
+
1185
1352
  /** `stock.reservation` (owner: stock). */
1186
1353
  export interface StockReservation {
1187
1354
  readonly name: 'stock.reservation';
@@ -1251,6 +1418,8 @@ export interface StockWarehouse {
1251
1418
  readonly code: F.Char<{ readonly required: true }>;
1252
1419
  readonly locations: F.One2many<'stock.location', { readonly required: true }>;
1253
1420
  readonly address: F.Many2one<'res.partner'>;
1421
+ readonly receptionSteps: F.Selection<'one' | 'two' | 'three', { readonly required: true; readonly default: true }>;
1422
+ readonly deliverySteps: F.Selection<'one' | 'two' | 'three', { readonly required: true; readonly default: true }>;
1254
1423
  };
1255
1424
  readonly methods: StockWarehouseMethods;
1256
1425
  }
@@ -1,7 +1,7 @@
1
1
  import { defineModule } from '../modules-sdk/index.js';
2
2
  import type { ModuleContext } from '../server/index.js';
3
3
  import type { Worker } from '../server/orm.js';
4
- export { createReceiptFor, LineReceived, MovePurchase, OrderReceipts, PickingPurchase, purchaseStockShutro, } from './module.js';
4
+ export { createReceiptFor, LineReceived, MovePurchase, OrderReceipts, PickingPurchase, purchaseStockShutro, ReorderBuy, } from './module.js';
5
5
  /** The subscriber that makes the receipts of confirmed orders; tests `drain()` it, the server starts it. */
6
6
  export declare function purchaseStockWorker(context: Pick<ModuleContext, 'shutro'>): Worker;
7
7
  export declare const purchaseStock: ReturnType<typeof defineModule>;
@@ -4,7 +4,7 @@ import { purchase } from '../purchase/index.js';
4
4
  import { stock } from '../stock/index.js';
5
5
  import { field, stat } from '../views/index.js';
6
6
  import { createReceiptFor, purchaseStockShutro } from './module.js';
7
- export { createReceiptFor, LineReceived, MovePurchase, OrderReceipts, PickingPurchase, purchaseStockShutro, } from './module.js';
7
+ export { createReceiptFor, LineReceived, MovePurchase, OrderReceipts, PickingPurchase, purchaseStockShutro, ReorderBuy, } from './module.js';
8
8
  /** The subscriber that makes the receipts of confirmed orders; tests `drain()` it, the server starts it. */
9
9
  export function purchaseStockWorker(context) {
10
10
  return context.shutro.subscribe('purchase_stock.receipts', 'purchase.order.confirmed', async (event, env) => {
@@ -60,7 +60,14 @@ export const purchaseStock = defineModule({
60
60
  {
61
61
  view: 'purchase.order.form',
62
62
  operations: [
63
- { append: 'dates', nodes: [field({ field: 'receiptState', id: 'receipt_state' })] },
63
+ {
64
+ append: 'dates',
65
+ nodes: [
66
+ field({ field: 'receiptState', id: 'receipt_state' }),
67
+ field({ field: 'warehouse', id: 'order_deliver_to' }),
68
+ field({ field: 'dropship', id: 'order_dropship' }),
69
+ ],
70
+ },
64
71
  ],
65
72
  },
66
73
  {