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
@@ -2,7 +2,8 @@
2
2
  * The data layer of the Purchase ↔ Stockroom ↔ Accounting bridge (RFC 0021 step 3, part 2): what is received on a
3
3
  * purchase order is valued at the order's price (converted to the product's unit and to the company's currency), a
4
4
  * vendor bill's goods are posted to Goods received not billed — where they meet the receipt — and what the bill
5
- * says differently from the receipt's value goes to Price differences, so the interim account is cleared.
5
+ * says differently from the receipt's value goes to Price differences, so the interim account is cleared. Bills of
6
+ * dropshipped orders keep the purchases account: those goods never enter stock.
6
7
  */
7
8
  import { accountingShutro } from '../accounting/index.js';
8
9
  import { purchaseShutro } from '../purchase/index.js';
@@ -56,8 +57,9 @@ export const BillGoods = extendModel('account.move', {
56
57
  productLineAccounts: async function (next) {
57
58
  const out = await next();
58
59
  const bills = this;
59
- for (const m of await bills.load({ lines: { product: true } })) {
60
- if (!BILLS.has(m.kind))
60
+ for (const m of await bills.load({ lines: { product: true }, purchaseOrder: true })) {
61
+ // Dropshipped goods never enter stock: their bill keeps the purchases account (their cost).
62
+ if (!BILLS.has(m.kind) || m.purchaseOrder?.dropship === true)
61
63
  continue;
62
64
  const accounts = await stockAccountsOf(bills.env, m.company.id);
63
65
  if (accounts === null)
@@ -82,8 +84,12 @@ export const BillGoods = extendModel('account.move', {
82
84
  */
83
85
  async function postPriceDifferences(bills) {
84
86
  const env = bills.env;
85
- for (const m of await bills.load({ lines: { product: true }, company: true })) {
86
- if (m.kind !== 'in_invoice' || m.purchaseOrder === null)
87
+ for (const m of await bills.load({
88
+ lines: { product: true },
89
+ company: true,
90
+ purchaseOrder: true,
91
+ })) {
92
+ if (m.kind !== 'in_invoice' || m.purchaseOrder === null || m.purchaseOrder.dropship)
87
93
  continue;
88
94
  const accounts = await stockAccountsOf(env, m.company.id);
89
95
  if (accounts === null)
@@ -1,4 +1,4 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 3b224d5b3282989d
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 373b5a88ed37d6be
2
2
  // Bindings of module `recruitment`: import the definition API from here to get types scoped to what it can see.
3
3
  export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
4
4
  import { definitions } from '../../server/orm.js';
@@ -1,4 +1,4 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 3b224d5b3282989d
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 373b5a88ed37d6be
2
2
  // Schema view of module `recruitment` (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
 
@@ -308,6 +308,7 @@ export interface HiringStage {
308
308
  readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
309
309
  readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
310
310
  readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
311
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
311
312
  readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
312
313
  readonly sequence: F.Integer<{ readonly required: true; readonly default: true }>;
313
314
  readonly fold: F.Bool<{ readonly required: true; readonly default: true }>;
@@ -40,6 +40,7 @@ export declare const HiringStage: import("../server/orm.js").Model<"hiring.stage
40
40
  hasDefault: false;
41
41
  sequence: false;
42
42
  }>;
43
+ readonly active: import("../server/orm.js").ActiveField;
43
44
  readonly name: import("../server/orm.js").CharField<{
44
45
  readonly required: true;
45
46
  readonly computed: false;
@@ -875,6 +876,7 @@ export declare const recruitmentShutro: import("../server/orm.js").Module<readon
875
876
  hasDefault: false;
876
877
  sequence: false;
877
878
  }>;
879
+ readonly active: import("../server/orm.js").ActiveField;
878
880
  readonly name: import("../server/orm.js").CharField<{
879
881
  readonly required: true;
880
882
  readonly computed: false;
@@ -12,6 +12,7 @@ const ALL = ['read', 'write', 'create', 'unlink'];
12
12
  const me = { $env: 'uid' };
13
13
  export const HiringStage = defineModel('hiring.stage', {
14
14
  label: 'Hiring stage',
15
+ archivable: true,
15
16
  recName: 'name',
16
17
  order: ['sequence asc', 'id asc'],
17
18
  access: { 'hiring.user': READ, 'hiring.manager': ALL },
@@ -176,7 +177,7 @@ export const HiringScorecard = defineModel('hiring.scorecard', {
176
177
  });
177
178
  export const recruitmentShutro = defineModule({
178
179
  name: 'recruitment',
179
- version: '0.1.0',
180
+ version: '0.2.0',
180
181
  depends: [hrShutro],
181
182
  groups: [
182
183
  orm.defineGroup({ code: 'hiring.user', label: 'Interviewer', implies: ['hr.user'] }),
@@ -1,4 +1,4 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 6e014c4aaba6871d
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: f86805a61571d3a0
2
2
  // Bindings of module `sale_account`: import the definition API from here to get types scoped to what it can see.
3
3
  export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
4
4
  import { definitions } from '../../server/orm.js';
@@ -1,10 +1,11 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 6e014c4aaba6871d
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: f86805a61571d3a0
2
2
  // Schema view of module `sale_account` (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.account': AccountAccount;
8
+ readonly 'account.analytic': AccountAnalytic;
8
9
  readonly 'account.fiscal.year': AccountFiscalYear;
9
10
  readonly 'account.full.reconcile': AccountFullReconcile;
10
11
  readonly 'account.journal': AccountJournal;
@@ -18,9 +19,12 @@ export interface SchemaView {
18
19
  readonly 'account.tax': AccountTax;
19
20
  readonly 'account.tax.component': AccountTaxComponent;
20
21
  readonly 'account.withholding': AccountWithholding;
22
+ readonly 'approval.delegation': ApprovalDelegation;
21
23
  readonly 'approval.level': ApprovalLevel;
24
+ readonly 'approval.link': ApprovalLink;
22
25
  readonly 'approval.policy': ApprovalPolicy;
23
26
  readonly 'approval.request': ApprovalRequest;
27
+ readonly 'approval.vote': ApprovalVote;
24
28
  readonly 'audit.event': AuditEvent;
25
29
  readonly 'auth.api_key': AuthApiKey;
26
30
  readonly 'auth.credential': AuthCredential;
@@ -88,6 +92,30 @@ export interface AccountAccount {
88
92
  export interface AccountAccountMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.account'> {
89
93
  }
90
94
 
95
+ /** `account.analytic` (owner: accounting). */
96
+ export interface AccountAnalytic {
97
+ readonly name: 'account.analytic';
98
+ readonly fields: {
99
+ readonly id: F.Id<'account.analytic'>;
100
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
101
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
102
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
103
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
104
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
105
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
106
+ readonly company: F.Many2one<'res.company', { readonly required: true; readonly default: true }>;
107
+ readonly code: F.Char;
108
+ readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
109
+ readonly parent: F.Many2one<'account.analytic'>;
110
+ readonly note: F.Text;
111
+ };
112
+ readonly methods: AccountAnalyticMethods;
113
+ }
114
+
115
+ /** Methods of `account.analytic`: declared ones and transitions. */
116
+ export interface AccountAnalyticMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.analytic'> {
117
+ }
118
+
91
119
  /** `account.fiscal.year` (owner: accounting). */
92
120
  export interface AccountFiscalYear {
93
121
  readonly name: 'account.fiscal.year';
@@ -244,6 +272,7 @@ export interface AccountMoveLine {
244
272
  readonly lineKind: F.Selection<'entry' | 'product' | 'tax' | 'counterpart', { readonly required: true; readonly default: true }>;
245
273
  readonly invoice: F.Many2one<'account.move', { readonly readonly: true; readonly compute: true; readonly store: true }>;
246
274
  readonly product: F.Many2one<'product.product'>;
275
+ readonly analytic: F.Many2one<'account.analytic'>;
247
276
  readonly quantity: F.Decimal<{ readonly default: true }>;
248
277
  readonly priceUnit: F.Decimal<{ readonly default: true }>;
249
278
  readonly discount: F.Decimal<{ readonly default: true }>;
@@ -485,6 +514,29 @@ export interface AccountWithholding {
485
514
  export interface AccountWithholdingMethods extends F.Methods<typeof import('../../accounting/index.js').accountingShutro, 'account.withholding'> {
486
515
  }
487
516
 
517
+ /** `approval.delegation` (owner: permissions). */
518
+ export interface ApprovalDelegation {
519
+ readonly name: 'approval.delegation';
520
+ readonly fields: {
521
+ readonly id: F.Id<'approval.delegation'>;
522
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
523
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
524
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
525
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
526
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
527
+ readonly user: F.Many2one<'res.users', { readonly required: true; readonly default: true }>;
528
+ readonly delegate: F.Many2one<'res.users', { readonly required: true }>;
529
+ readonly dateFrom: F.DateOnly<{ readonly required: true }>;
530
+ readonly dateTo: F.DateOnly<{ readonly required: true }>;
531
+ readonly note: F.Char;
532
+ };
533
+ readonly methods: ApprovalDelegationMethods;
534
+ }
535
+
536
+ /** Methods of `approval.delegation`: declared ones and transitions. */
537
+ export interface ApprovalDelegationMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.delegation'> {
538
+ }
539
+
488
540
  /** `approval.level` (owner: permissions). */
489
541
  export interface ApprovalLevel {
490
542
  readonly name: 'approval.level';
@@ -499,7 +551,14 @@ export interface ApprovalLevel {
499
551
  readonly sequence: F.Integer<{ readonly default: true }>;
500
552
  readonly name: F.Char<{ readonly required: true }>;
501
553
  readonly condition: F.Json;
502
- readonly approverRole: F.Char<{ readonly required: true }>;
554
+ readonly approverKind: F.Selection<'role' | 'users' | 'manager' | 'field', { readonly required: true; readonly default: true }>;
555
+ readonly approverRole: F.Char;
556
+ readonly approverUsers: F.Many2many<'res.users', { readonly required: true }>;
557
+ readonly approverField: F.Char;
558
+ readonly quorum: F.Selection<'any' | 'all' | 'count', { readonly required: true; readonly default: true }>;
559
+ readonly quorumCount: F.Integer;
560
+ readonly deadlineHours: F.Integer;
561
+ readonly escalateRole: F.Char;
503
562
  };
504
563
  readonly methods: ApprovalLevelMethods;
505
564
  }
@@ -508,6 +567,29 @@ export interface ApprovalLevel {
508
567
  export interface ApprovalLevelMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.level'> {
509
568
  }
510
569
 
570
+ /** `approval.link` (owner: permissions). */
571
+ export interface ApprovalLink {
572
+ readonly name: 'approval.link';
573
+ readonly fields: {
574
+ readonly id: F.Id<'approval.link'>;
575
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
576
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
577
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
578
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
579
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
580
+ readonly request: F.Many2one<'approval.request', { readonly required: true }>;
581
+ readonly user: F.Many2one<'res.users', { readonly required: true }>;
582
+ readonly tokenHash: F.Char<{ readonly required: true }>;
583
+ readonly expiresAt: F.Datetime<{ readonly required: true }>;
584
+ readonly usedAt: F.Datetime;
585
+ };
586
+ readonly methods: ApprovalLinkMethods;
587
+ }
588
+
589
+ /** Methods of `approval.link`: declared ones and transitions. */
590
+ export interface ApprovalLinkMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.link'> {
591
+ }
592
+
511
593
  /** `approval.policy` (owner: permissions). */
512
594
  export interface ApprovalPolicy {
513
595
  readonly name: 'approval.policy';
@@ -525,6 +607,9 @@ export interface ApprovalPolicy {
525
607
  readonly company: F.Many2one<'res.company'>;
526
608
  readonly onApproved: F.Char;
527
609
  readonly onRejected: F.Char;
610
+ readonly onSentBack: F.Char;
611
+ readonly onWithdrawn: F.Char;
612
+ readonly reasonRequired: F.Bool<{ readonly required: true; readonly default: true }>;
528
613
  readonly levels: F.One2many<'approval.level', { readonly required: true }>;
529
614
  };
530
615
  readonly methods: ApprovalPolicyMethods;
@@ -551,8 +636,16 @@ export interface ApprovalRequest {
551
636
  readonly targetModel: F.Char<{ readonly required: true }>;
552
637
  readonly targetId: F.Integer<{ readonly required: true }>;
553
638
  readonly company: F.Many2one<'res.company'>;
554
- readonly approverRole: F.Char<{ readonly required: true }>;
555
- readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'cancelled', { readonly required: true; readonly default: true }>;
639
+ readonly approverRole: F.Char;
640
+ readonly approvers: F.Many2many<'res.users', { readonly required: true }>;
641
+ readonly required: F.Integer<{ readonly required: true; readonly default: true }>;
642
+ readonly round: F.Integer<{ readonly required: true; readonly default: true }>;
643
+ readonly votes: F.One2many<'approval.vote', { readonly required: true }>;
644
+ readonly dueAt: F.Datetime;
645
+ readonly remindedAt: F.Datetime;
646
+ readonly escalatedTo: F.Char;
647
+ readonly escalatedAt: F.Datetime;
648
+ readonly state: F.Selection<'pending' | 'approved' | 'rejected' | 'sent_back' | 'cancelled', { readonly required: true; readonly default: true }>;
556
649
  readonly requestedBy: F.Many2one<'res.users'>;
557
650
  readonly decidedBy: F.Many2one<'res.users'>;
558
651
  readonly decidedAt: F.Datetime;
@@ -565,6 +658,31 @@ export interface ApprovalRequest {
565
658
  export interface ApprovalRequestMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.request'> {
566
659
  }
567
660
 
661
+ /** `approval.vote` (owner: permissions). */
662
+ export interface ApprovalVote {
663
+ readonly name: 'approval.vote';
664
+ readonly fields: {
665
+ readonly id: F.Id<'approval.vote'>;
666
+ readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
667
+ readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
668
+ readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
669
+ readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
670
+ readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
671
+ readonly request: F.Many2one<'approval.request', { readonly required: true }>;
672
+ readonly user: F.Many2one<'res.users', { readonly required: true }>;
673
+ readonly decision: F.Selection<'approve' | 'reject' | 'send_back', { readonly required: true }>;
674
+ readonly comment: F.Text;
675
+ readonly at: F.Datetime<{ readonly required: true }>;
676
+ readonly onBehalfOf: F.Many2one<'res.users'>;
677
+ readonly ip: F.Char;
678
+ };
679
+ readonly methods: ApprovalVoteMethods;
680
+ }
681
+
682
+ /** Methods of `approval.vote`: declared ones and transitions. */
683
+ export interface ApprovalVoteMethods extends F.Methods<typeof import('../../permissions/index.js').permissionsShutro, 'approval.vote'> {
684
+ }
685
+
568
686
  /** `audit.event` (owner: base). */
569
687
  export interface AuditEvent {
570
688
  readonly name: 'audit.event';
@@ -1088,6 +1206,7 @@ export interface ProductCategory {
1088
1206
  readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
1089
1207
  readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
1090
1208
  readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
1209
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
1091
1210
  readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
1092
1211
  readonly parent: F.Many2one<'product.category'>;
1093
1212
  };
@@ -1466,6 +1466,7 @@ export declare const saleAccountShutro: import("../server/orm.js").Module<readon
1466
1466
  hasDefault: false;
1467
1467
  sequence: false;
1468
1468
  }>;
1469
+ readonly active: import("../server/orm.js").ActiveField;
1469
1470
  readonly name: import("../server/orm.js").CharField<{
1470
1471
  readonly required: true;
1471
1472
  readonly computed: false;
@@ -2629,6 +2630,131 @@ export declare const saleAccountShutro: import("../server/orm.js").Module<readon
2629
2630
  readonly hasDefault: false;
2630
2631
  readonly readonly: false;
2631
2632
  }>;
2633
+ }>>, import("../server/orm.js").Model<"account.analytic", {
2634
+ readonly id: import("../server/orm.js").IdField<"account.analytic">;
2635
+ readonly createdAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
2636
+ required: true;
2637
+ readonly: true;
2638
+ computed: false;
2639
+ inverse: false;
2640
+ hasDefault: false;
2641
+ sequence: false;
2642
+ }>;
2643
+ readonly updatedAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
2644
+ required: true;
2645
+ readonly: true;
2646
+ computed: false;
2647
+ inverse: false;
2648
+ hasDefault: false;
2649
+ sequence: false;
2650
+ }>;
2651
+ readonly createdBy: import("../server/orm.js").Many2oneField<'res.users', {
2652
+ required: false;
2653
+ readonly: true;
2654
+ computed: false;
2655
+ inverse: false;
2656
+ hasDefault: false;
2657
+ sequence: false;
2658
+ }>;
2659
+ readonly updatedBy: import("../server/orm.js").Many2oneField<'res.users', {
2660
+ required: false;
2661
+ readonly: true;
2662
+ computed: false;
2663
+ inverse: false;
2664
+ hasDefault: false;
2665
+ sequence: false;
2666
+ }>;
2667
+ readonly displayName: import("../server/orm.js").CharField<{
2668
+ required: true;
2669
+ readonly: true;
2670
+ computed: true;
2671
+ inverse: false;
2672
+ hasDefault: false;
2673
+ sequence: false;
2674
+ }>;
2675
+ readonly active: import("../server/orm.js").ActiveField;
2676
+ readonly company: import("../server/orm.js").CompanyField<true>;
2677
+ readonly code: import("../server/orm.js").CharField<{
2678
+ readonly required: false;
2679
+ readonly computed: false;
2680
+ readonly inverse: false;
2681
+ readonly sequence: false;
2682
+ readonly computeName: undefined;
2683
+ readonly store: true;
2684
+ readonly hasDefault: false;
2685
+ readonly readonly: false;
2686
+ }, string>;
2687
+ readonly name: import("../server/orm.js").CharField<{
2688
+ readonly required: true;
2689
+ readonly computed: false;
2690
+ readonly inverse: false;
2691
+ readonly sequence: false;
2692
+ readonly computeName: undefined;
2693
+ readonly store: true;
2694
+ readonly hasDefault: false;
2695
+ readonly readonly: false;
2696
+ }, string | Readonly<Record<string, string>>>;
2697
+ readonly parent: import("../server/orm.js").Many2oneField<"account.analytic", {
2698
+ readonly required: false;
2699
+ readonly computed: false;
2700
+ readonly inverse: false;
2701
+ readonly sequence: false;
2702
+ readonly computeName: undefined;
2703
+ readonly store: true;
2704
+ readonly hasDefault: false;
2705
+ readonly readonly: false;
2706
+ }>;
2707
+ readonly note: import("../server/orm.js").ScalarField<"text", string, string, {
2708
+ readonly required: false;
2709
+ readonly computed: false;
2710
+ readonly inverse: false;
2711
+ readonly sequence: false;
2712
+ readonly computeName: undefined;
2713
+ readonly store: true;
2714
+ readonly hasDefault: false;
2715
+ readonly readonly: false;
2716
+ }>;
2717
+ }, {} & import("../server/orm.js").TransitionMethods<{
2718
+ readonly code: import("../server/orm.js").CharField<{
2719
+ readonly required: false;
2720
+ readonly computed: false;
2721
+ readonly inverse: false;
2722
+ readonly sequence: false;
2723
+ readonly computeName: undefined;
2724
+ readonly store: true;
2725
+ readonly hasDefault: false;
2726
+ readonly readonly: false;
2727
+ }, string>;
2728
+ readonly name: import("../server/orm.js").CharField<{
2729
+ readonly required: true;
2730
+ readonly computed: false;
2731
+ readonly inverse: false;
2732
+ readonly sequence: false;
2733
+ readonly computeName: undefined;
2734
+ readonly store: true;
2735
+ readonly hasDefault: false;
2736
+ readonly readonly: false;
2737
+ }, string | Readonly<Record<string, string>>>;
2738
+ readonly parent: import("../server/orm.js").Many2oneField<"account.analytic", {
2739
+ readonly required: false;
2740
+ readonly computed: false;
2741
+ readonly inverse: false;
2742
+ readonly sequence: false;
2743
+ readonly computeName: undefined;
2744
+ readonly store: true;
2745
+ readonly hasDefault: false;
2746
+ readonly readonly: false;
2747
+ }>;
2748
+ readonly note: import("../server/orm.js").ScalarField<"text", string, string, {
2749
+ readonly required: false;
2750
+ readonly computed: false;
2751
+ readonly inverse: false;
2752
+ readonly sequence: false;
2753
+ readonly computeName: undefined;
2754
+ readonly store: true;
2755
+ readonly hasDefault: false;
2756
+ readonly readonly: false;
2757
+ }>;
2632
2758
  }>>, import("../server/orm.js").Model<"account.account", {
2633
2759
  readonly id: import("../server/orm.js").IdField<"account.account">;
2634
2760
  readonly createdAt: import("../server/orm.js").ScalarField<'datetime', Date, Date, {
@@ -4321,6 +4447,16 @@ export declare const saleAccountShutro: import("../server/orm.js").Module<readon
4321
4447
  readonly hasDefault: false;
4322
4448
  readonly readonly: false;
4323
4449
  }>;
4450
+ readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
4451
+ readonly required: false;
4452
+ readonly computed: false;
4453
+ readonly inverse: false;
4454
+ readonly sequence: false;
4455
+ readonly computeName: undefined;
4456
+ readonly store: true;
4457
+ readonly hasDefault: false;
4458
+ readonly readonly: false;
4459
+ }>;
4324
4460
  readonly quantity: import("../server/orm.js").DecimalField<{
4325
4461
  readonly required: false;
4326
4462
  readonly computed: false;
@@ -4672,6 +4808,16 @@ export declare const saleAccountShutro: import("../server/orm.js").Module<readon
4672
4808
  readonly hasDefault: false;
4673
4809
  readonly readonly: false;
4674
4810
  }>;
4811
+ readonly analytic: import("../server/orm.js").Many2oneField<"account.analytic", {
4812
+ readonly required: false;
4813
+ readonly computed: false;
4814
+ readonly inverse: false;
4815
+ readonly sequence: false;
4816
+ readonly computeName: undefined;
4817
+ readonly store: true;
4818
+ readonly hasDefault: false;
4819
+ readonly readonly: false;
4820
+ }>;
4675
4821
  readonly quantity: import("../server/orm.js").DecimalField<{
4676
4822
  readonly required: false;
4677
4823
  readonly computed: false;
@@ -6597,6 +6743,7 @@ export declare const saleAccountShutro: import("../server/orm.js").Module<readon
6597
6743
  hasDefault: false;
6598
6744
  sequence: false;
6599
6745
  }>;
6746
+ readonly active: import("../server/orm.js").ActiveField;
6600
6747
  readonly name: import("../server/orm.js").CharField<{
6601
6748
  readonly required: true;
6602
6749
  readonly computed: false;
@@ -1,4 +1,4 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: c751bc104fae75ff
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 0d6bfa0b460724d4
2
2
  // Bindings of module `sale_portal`: import the definition API from here to get types scoped to what it can see.
3
3
  export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
4
4
  import { definitions } from '../../server/orm.js';
@@ -1,4 +1,4 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: c751bc104fae75ff
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 0d6bfa0b460724d4
2
2
  // Schema view of module `sale_portal` (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
 
@@ -665,6 +665,7 @@ export interface ProductCategory {
665
665
  readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
666
666
  readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
667
667
  readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
668
+ readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
668
669
  readonly name: F.Char<{ readonly required: true; readonly translate: true }>;
669
670
  readonly parent: F.Many2one<'product.category'>;
670
671
  };
@@ -1433,6 +1433,7 @@ export declare const salePortalShutro: import("shutro").Module<readonly [], read
1433
1433
  hasDefault: false;
1434
1434
  sequence: false;
1435
1435
  }>;
1436
+ readonly active: import("shutro").ActiveField;
1436
1437
  readonly name: import("shutro").CharField<{
1437
1438
  readonly required: true;
1438
1439
  readonly computed: false;
@@ -1,4 +1,4 @@
1
- // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 25e39d8ed52408b2
1
+ // GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 86cb3981e60d955c
2
2
  // Bindings of module `sale_project`: import the definition API from here to get types scoped to what it can see.
3
3
  export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
4
4
  import { definitions } from '../../server/orm.js';