celerp 2.5.0__tar.gz → 2.5.3__tar.gz

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 (925) hide show
  1. celerp-2.5.3/CONTRIBUTING.md +190 -0
  2. celerp-2.5.3/PKG-INFO +399 -0
  3. celerp-2.5.3/README.md +174 -0
  4. celerp-2.5.3/celerp/ai/memory.py +105 -0
  5. celerp-2.5.3/celerp/ai/quota.py +62 -0
  6. celerp-2.5.3/celerp/cli.py +1586 -0
  7. celerp-2.5.3/celerp/config.py +799 -0
  8. celerp-2.5.3/celerp/config_store.py +248 -0
  9. celerp-2.5.3/celerp/connectors/base.py +194 -0
  10. celerp-2.5.3/celerp/connectors/daily_scheduler.py +186 -0
  11. celerp-2.5.3/celerp/connectors/http.py +103 -0
  12. celerp-2.5.3/celerp/connectors/images.py +155 -0
  13. celerp-2.5.3/celerp/connectors/outbound_queue.py +550 -0
  14. celerp-2.5.3/celerp/connectors/ownership.py +557 -0
  15. celerp-2.5.3/celerp/connectors/quickbooks.py +343 -0
  16. celerp-2.5.3/celerp/connectors/relay_token.py +89 -0
  17. celerp-2.5.3/celerp/connectors/remote_state.py +185 -0
  18. celerp-2.5.3/celerp/connectors/shopify.py +370 -0
  19. celerp-2.5.3/celerp/connectors/sync_runner.py +491 -0
  20. celerp-2.5.3/celerp/connectors/upsert.py +105 -0
  21. celerp-2.5.3/celerp/connectors/webhooks.py +225 -0
  22. celerp-2.5.3/celerp/connectors/woocommerce.py +1054 -0
  23. celerp-2.5.3/celerp/connectors/xero.py +481 -0
  24. celerp-2.5.3/celerp/db_url.py +16 -0
  25. celerp-2.5.3/celerp/embedded_pg.py +356 -0
  26. celerp-2.5.3/celerp/events/engine.py +373 -0
  27. celerp-2.5.3/celerp/events/schemas.py +1391 -0
  28. celerp-2.5.3/celerp/gateway/__init__.py +98 -0
  29. celerp-2.5.3/celerp/gateway/client.py +1095 -0
  30. celerp-2.5.3/celerp/gateway/state.py +986 -0
  31. celerp-2.5.3/celerp/inventory_codes.py +188 -0
  32. celerp-2.5.3/celerp/main.py +624 -0
  33. celerp-2.5.3/celerp/migrations/_auto_stamp.py +362 -0
  34. celerp-2.5.3/celerp/migrations/_json_compat.py +103 -0
  35. celerp-2.5.3/celerp/migrations/env.py +88 -0
  36. celerp-2.5.3/celerp/migrations/versions/b3c4d5e6f7a8_expand_role_permissions_to_role_grants.py +165 -0
  37. celerp-2.5.3/celerp/migrations/versions/bc0d1e2f3a4b_barcode_unique_index.py +38 -0
  38. celerp-2.5.3/celerp/migrations/versions/d1e2f3a4b5c6_rfid_epc_unique_index.py +32 -0
  39. celerp-2.5.3/celerp/migrations/versions/f8a9b0c1d2e3_work_center_default_backfill.py +114 -0
  40. celerp-2.5.3/celerp/migrations/versions/g4b5c6d7e8f9_add_install_owner.py +40 -0
  41. celerp-2.5.3/celerp/migrations/versions/h5c6d7e8f9a0_backfill_install_owner.py +54 -0
  42. celerp-2.5.3/celerp/migrations/versions/i6d7e8f9a0b1_add_sync_run_attention.py +25 -0
  43. celerp-2.5.3/celerp/migrations/versions/j7e8f9a0b1c2_add_connector_sources.py +32 -0
  44. celerp-2.5.3/celerp/migrations/versions/k8f9a0b1c2d3_drop_physical_code_unique_indexes.py +40 -0
  45. celerp-2.5.3/celerp/migrations/versions/l9a0b1c2d3e4_fold_list_contact_fields.py +46 -0
  46. celerp-2.5.3/celerp/models/__init__.py +14 -0
  47. celerp-2.5.3/celerp/models/company.py +88 -0
  48. celerp-2.5.3/celerp/models/connector_source.py +26 -0
  49. celerp-2.5.3/celerp/models/projections.py +36 -0
  50. celerp-2.5.3/celerp/models/sync_run.py +44 -0
  51. celerp-2.5.3/celerp/modules/api.py +38 -0
  52. celerp-2.5.3/celerp/modules/loader.py +1365 -0
  53. celerp-2.5.3/celerp/modules/migrations_runner.py +236 -0
  54. celerp-2.5.3/celerp/modules/slots.py +131 -0
  55. celerp-2.5.3/celerp/output/doc_print.py +647 -0
  56. celerp-2.5.3/celerp/output/document_context.py +98 -0
  57. celerp-2.5.3/celerp/output/pdf.py +535 -0
  58. celerp-2.5.3/celerp/projections/engine.py +182 -0
  59. celerp-2.5.3/celerp/routers/auth.py +641 -0
  60. celerp-2.5.3/celerp/routers/companies.py +2584 -0
  61. celerp-2.5.3/celerp/routers/debug.py +276 -0
  62. celerp-2.5.3/celerp/routers/doctor.py +916 -0
  63. celerp-2.5.3/celerp/routers/health.py +1397 -0
  64. celerp-2.5.3/celerp/routers/system.py +161 -0
  65. celerp-2.5.3/celerp/runtime.py +153 -0
  66. celerp-2.5.3/celerp/schemas/numbers.py +12 -0
  67. celerp-2.5.3/celerp/services/attachments.py +508 -0
  68. celerp-2.5.3/celerp/services/auth.py +383 -0
  69. celerp-2.5.3/celerp/services/auto_je.py +1797 -0
  70. celerp-2.5.3/celerp/services/backup.py +228 -0
  71. celerp-2.5.3/celerp/services/backup_import.py +607 -0
  72. celerp-2.5.3/celerp/services/business_time.py +27 -0
  73. celerp-2.5.3/celerp/services/business_type.py +99 -0
  74. celerp-2.5.3/celerp/services/cloud_entitlement.py +321 -0
  75. celerp-2.5.3/celerp/services/company_lock.py +100 -0
  76. celerp-2.5.3/celerp/services/cost_visibility.py +80 -0
  77. celerp-2.5.3/celerp/services/csv_export.py +60 -0
  78. celerp-2.5.3/celerp/services/currencies.py +73 -0
  79. celerp-2.5.3/celerp/services/demo.py +1850 -0
  80. celerp-2.5.3/celerp/services/doc_balance.py +120 -0
  81. celerp-2.5.3/celerp/services/field_schema.py +259 -0
  82. celerp-2.5.3/celerp/services/fulfill.py +375 -0
  83. celerp-2.5.3/celerp/services/holdings.py +249 -0
  84. celerp-2.5.3/celerp/services/landed_cost.py +112 -0
  85. celerp-2.5.3/celerp/services/money.py +300 -0
  86. celerp-2.5.3/celerp/services/outbound_url.py +195 -0
  87. celerp-2.5.3/celerp/services/payment_terms.py +44 -0
  88. celerp-2.5.3/celerp/services/payments.py +112 -0
  89. celerp-2.5.3/celerp/services/physical_codes.py +136 -0
  90. celerp-2.5.3/celerp/services/pick.py +250 -0
  91. celerp-2.5.3/celerp/services/pricing.py +264 -0
  92. celerp-2.5.3/celerp/services/reorder.py +370 -0
  93. celerp-2.5.3/celerp/services/terms.py +82 -0
  94. celerp-2.5.3/celerp/services/units.py +153 -0
  95. celerp-2.5.3/celerp/services/update.py +855 -0
  96. celerp-2.5.3/celerp/services/vertical_presets.py +157 -0
  97. celerp-2.5.3/celerp/session_gate.py +58 -0
  98. celerp-2.5.3/celerp.egg-info/PKG-INFO +399 -0
  99. celerp-2.5.3/celerp.egg-info/SOURCES.txt +721 -0
  100. celerp-2.5.3/celerp.egg-info/requires.txt +124 -0
  101. celerp-2.5.3/celerp.egg-info/scm_file_list.json +1447 -0
  102. celerp-2.5.3/conftest.py +786 -0
  103. celerp-2.5.3/constraints.txt +233 -0
  104. celerp-2.5.3/default_modules/celerp-accounting/celerp_accounting/routes.py +4187 -0
  105. celerp-2.5.3/default_modules/celerp-accounting/tests/test_journal_gl_soa.py +2394 -0
  106. celerp-2.5.3/default_modules/celerp-admin/celerp_admin/routes.py +1075 -0
  107. celerp-2.5.3/default_modules/celerp-ai/celerp_ai/routes.py +1526 -0
  108. celerp-2.5.3/default_modules/celerp-ai/tests/_fixtures.py +140 -0
  109. celerp-2.5.3/default_modules/celerp-ai/tests/test_commercial_routing.py +198 -0
  110. celerp-2.5.3/default_modules/celerp-ai/tests/test_llm.py +270 -0
  111. celerp-2.5.3/default_modules/celerp-ai/tests/test_quota.py +129 -0
  112. celerp-2.5.3/default_modules/celerp-backup/celerp_backup/routes.py +343 -0
  113. celerp-2.5.3/default_modules/celerp-connectors/__init__.py +64 -0
  114. celerp-2.5.3/default_modules/celerp-connectors/celerp_connectors/routes.py +758 -0
  115. celerp-2.5.3/default_modules/celerp-connectors/tests/conftest.py +99 -0
  116. celerp-2.5.3/default_modules/celerp-connectors/tests/test_connector_correctness.py +136 -0
  117. celerp-2.5.3/default_modules/celerp-connectors/tests/test_connectors.py +826 -0
  118. celerp-2.5.3/default_modules/celerp-connectors/tests/test_credentials_routes.py +590 -0
  119. celerp-2.5.3/default_modules/celerp-connectors/tests/test_images.py +147 -0
  120. celerp-2.5.3/default_modules/celerp-connectors/tests/test_outbound.py +231 -0
  121. celerp-2.5.3/default_modules/celerp-connectors/tests/test_rate_limiting.py +117 -0
  122. celerp-2.5.3/default_modules/celerp-connectors/tests/test_shopify.py +220 -0
  123. celerp-2.5.3/default_modules/celerp-connectors/tests/test_wiring.py +415 -0
  124. celerp-2.5.3/default_modules/celerp-connectors/tests/test_woocommerce.py +762 -0
  125. celerp-2.5.3/default_modules/celerp-connectors/tests/test_woocommerce_webhooks.py +140 -0
  126. celerp-2.5.3/default_modules/celerp-connectors/tests/test_xero.py +89 -0
  127. celerp-2.5.3/default_modules/celerp-contacts/celerp_contacts/migrations.py +200 -0
  128. celerp-2.5.3/default_modules/celerp-contacts/celerp_contacts/references.py +96 -0
  129. celerp-2.5.3/default_modules/celerp-contacts/celerp_contacts/routes.py +1166 -0
  130. celerp-2.5.3/default_modules/celerp-contacts/celerp_contacts/search.py +69 -0
  131. celerp-2.5.3/default_modules/celerp-contacts/celerp_contacts/services.py +149 -0
  132. celerp-2.5.3/default_modules/celerp-dashboard/celerp_dashboard/routes.py +240 -0
  133. celerp-2.5.3/default_modules/celerp-docs/__init__.py +49 -0
  134. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/api_setup.py +20 -0
  135. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/doc_constants.py +106 -0
  136. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/doc_money.py +116 -0
  137. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/doc_projections.py +519 -0
  138. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/doc_service.py +1311 -0
  139. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/received.py +670 -0
  140. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/received_legacy.py +155 -0
  141. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/routes.py +9049 -0
  142. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/routes_payments.py +208 -0
  143. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/routes_share.py +848 -0
  144. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/search.py +68 -0
  145. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/sequences.py +184 -0
  146. celerp-2.5.3/default_modules/celerp-docs/celerp_docs/taxes.py +52 -0
  147. celerp-2.5.3/default_modules/celerp-docs/tests/test_audits.py +997 -0
  148. celerp-2.5.3/default_modules/celerp-docs/tests/test_bulk_payment_alloc_lock.py +233 -0
  149. celerp-2.5.3/default_modules/celerp-docs/tests/test_cogs_lifecycle_concurrency.py +207 -0
  150. celerp-2.5.3/default_modules/celerp-docs/tests/test_contact_reference_lifecycle.py +277 -0
  151. celerp-2.5.3/default_modules/celerp-docs/tests/test_contact_selection.py +486 -0
  152. celerp-2.5.3/default_modules/celerp-docs/tests/test_contact_write_doors.py +547 -0
  153. celerp-2.5.3/default_modules/celerp-docs/tests/test_list_concurrency.py +382 -0
  154. celerp-2.5.3/default_modules/celerp-docs/tests/test_list_contact_currency.py +86 -0
  155. celerp-2.5.3/default_modules/celerp-docs/tests/test_list_contact_reference.py +85 -0
  156. celerp-2.5.3/default_modules/celerp-docs/tests/test_list_outcome_concurrency.py +633 -0
  157. celerp-2.5.3/default_modules/celerp-docs/tests/test_list_query_pushdown.py +506 -0
  158. celerp-2.5.3/default_modules/celerp-docs/tests/test_list_reprice.py +410 -0
  159. celerp-2.5.3/default_modules/celerp-docs/tests/test_memo_close_review_fixes.py +448 -0
  160. celerp-2.5.3/default_modules/celerp-docs/tests/test_memo_lifecycle_concurrency.py +1087 -0
  161. celerp-2.5.3/default_modules/celerp-docs/tests/test_receive_sku_batch.py +74 -0
  162. celerp-2.5.3/default_modules/celerp-docs/tests/test_received_concurrency.py +88 -0
  163. celerp-2.5.3/default_modules/celerp-inventory/celerp_inventory/projections.py +556 -0
  164. celerp-2.5.3/default_modules/celerp-inventory/celerp_inventory/routes.py +4493 -0
  165. celerp-2.5.3/default_modules/celerp-inventory/celerp_inventory/routes_attachments.py +641 -0
  166. celerp-2.5.3/default_modules/celerp-inventory/celerp_inventory/search.py +262 -0
  167. celerp-2.5.3/default_modules/celerp-inventory/celerp_inventory/services.py +2544 -0
  168. celerp-2.5.3/default_modules/celerp-inventory/tests/test_import_service.py +563 -0
  169. celerp-2.5.3/default_modules/celerp-inventory/tests/test_landed_cost_projection.py +82 -0
  170. celerp-2.5.3/default_modules/celerp-inventory/tests/test_physical_mutation_concurrency.py +235 -0
  171. celerp-2.5.3/default_modules/celerp-labels/celerp_labels/routes.py +306 -0
  172. celerp-2.5.3/default_modules/celerp-manufacturing/celerp_manufacturing/routes.py +1874 -0
  173. celerp-2.5.3/default_modules/celerp-reports/celerp_reports/routes.py +638 -0
  174. celerp-2.5.3/default_modules/celerp-reports/tests/test_reports_full.py +72 -0
  175. celerp-2.5.3/default_modules/celerp-subscriptions/celerp_subscriptions/routes.py +336 -0
  176. celerp-2.5.3/default_modules/celerp-subscriptions/tests/test_subscriptions.py +412 -0
  177. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/agricultural.json +27 -0
  178. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/artwork.json +24 -0
  179. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/automotive.json +25 -0
  180. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/blank.json +11 -0
  181. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/books_media.json +25 -0
  182. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/coins_precious_metals.json +25 -0
  183. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/consulting.json +20 -0
  184. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/cosmetics.json +26 -0
  185. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/electronics.json +27 -0
  186. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/fashion.json +28 -0
  187. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/food_beverage.json +28 -0
  188. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/furniture.json +27 -0
  189. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/gemstones.json +28 -0
  190. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/hardware.json +26 -0
  191. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/watches.json +23 -0
  192. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/presets/wine_spirits.json +25 -0
  193. celerp-2.5.3/default_modules/celerp-verticals/celerp_verticals/routes.py +132 -0
  194. celerp-2.5.3/default_modules/celerp-verticals/tests/test_verticals.py +361 -0
  195. celerp-2.5.3/default_modules/celerp-verticals/tests/test_verticals_routers.py +128 -0
  196. celerp-2.5.3/default_modules/first_party.lock.json +16 -0
  197. celerp-2.5.3/pyproject.toml +203 -0
  198. celerp-2.5.3/test_helpers.py +242 -0
  199. celerp-2.5.3/ui/api_client.py +3464 -0
  200. celerp-2.5.3/ui/app.py +548 -0
  201. celerp-2.5.3/ui/components/currency.py +62 -0
  202. celerp-2.5.3/ui/components/operation_key.py +31 -0
  203. celerp-2.5.3/ui/components/report_kit.py +332 -0
  204. celerp-2.5.3/ui/components/shell.py +2414 -0
  205. celerp-2.5.3/ui/components/table.py +2658 -0
  206. celerp-2.5.3/ui/locales/am.json +3284 -0
  207. celerp-2.5.3/ui/locales/ar.json +3284 -0
  208. celerp-2.5.3/ui/locales/de.json +3284 -0
  209. celerp-2.5.3/ui/locales/en.json +3284 -0
  210. celerp-2.5.3/ui/locales/es.json +3284 -0
  211. celerp-2.5.3/ui/locales/fr.json +3284 -0
  212. celerp-2.5.3/ui/locales/id.json +3284 -0
  213. celerp-2.5.3/ui/locales/it.json +3284 -0
  214. celerp-2.5.3/ui/locales/ja.json +3284 -0
  215. celerp-2.5.3/ui/locales/pt.json +3284 -0
  216. celerp-2.5.3/ui/locales/th.json +3284 -0
  217. celerp-2.5.3/ui/locales/vi.json +3284 -0
  218. celerp-2.5.3/ui/routes/account.py +631 -0
  219. celerp-2.5.3/ui/routes/accounting.py +733 -0
  220. celerp-2.5.3/ui/routes/auth.py +936 -0
  221. celerp-2.5.3/ui/routes/contacts.py +2457 -0
  222. celerp-2.5.3/ui/routes/csv_import.py +1288 -0
  223. celerp-2.5.3/ui/routes/dashboard.py +1106 -0
  224. celerp-2.5.3/ui/routes/docs_import.py +673 -0
  225. celerp-2.5.3/ui/routes/documents.py +9921 -0
  226. celerp-2.5.3/ui/routes/inventory.py +7969 -0
  227. celerp-2.5.3/ui/routes/lists_import.py +293 -0
  228. celerp-2.5.3/ui/routes/settings.py +4439 -0
  229. celerp-2.5.3/ui/routes/settings_cloud.py +1567 -0
  230. celerp-2.5.3/ui/routes/settings_connectors.py +1470 -0
  231. celerp-2.5.3/ui/routes/settings_inventory.py +672 -0
  232. celerp-2.5.3/ui/routes/settings_manufacturing.py +147 -0
  233. celerp-2.5.3/ui/routes/settings_payments.py +184 -0
  234. celerp-2.5.3/ui/routes/setup.py +638 -0
  235. celerp-2.5.3/ui/routes/subscriptions.py +468 -0
  236. celerp-2.5.3/ui/routes/system_update.py +57 -0
  237. celerp-2.5.3/ui/static/app.css +3366 -0
  238. celerp-2.5.0/CONTRIBUTING.md +0 -169
  239. celerp-2.5.0/PKG-INFO +0 -346
  240. celerp-2.5.0/README.md +0 -172
  241. celerp-2.5.0/celerp/ai/memory.py +0 -102
  242. celerp-2.5.0/celerp/ai/quota.py +0 -62
  243. celerp-2.5.0/celerp/cli.py +0 -1382
  244. celerp-2.5.0/celerp/config.py +0 -801
  245. celerp-2.5.0/celerp/config_store.py +0 -203
  246. celerp-2.5.0/celerp/connectors/base.py +0 -159
  247. celerp-2.5.0/celerp/connectors/daily_scheduler.py +0 -173
  248. celerp-2.5.0/celerp/connectors/http.py +0 -81
  249. celerp-2.5.0/celerp/connectors/images.py +0 -148
  250. celerp-2.5.0/celerp/connectors/quickbooks.py +0 -290
  251. celerp-2.5.0/celerp/connectors/relay_token.py +0 -50
  252. celerp-2.5.0/celerp/connectors/shopify.py +0 -382
  253. celerp-2.5.0/celerp/connectors/sync_runner.py +0 -228
  254. celerp-2.5.0/celerp/connectors/upsert.py +0 -76
  255. celerp-2.5.0/celerp/connectors/webhooks.py +0 -116
  256. celerp-2.5.0/celerp/connectors/woocommerce.py +0 -457
  257. celerp-2.5.0/celerp/connectors/xero.py +0 -263
  258. celerp-2.5.0/celerp/embedded_pg.py +0 -302
  259. celerp-2.5.0/celerp/events/engine.py +0 -229
  260. celerp-2.5.0/celerp/events/schemas.py +0 -1339
  261. celerp-2.5.0/celerp/gateway/__init__.py +0 -102
  262. celerp-2.5.0/celerp/gateway/client.py +0 -956
  263. celerp-2.5.0/celerp/gateway/state.py +0 -1034
  264. celerp-2.5.0/celerp/inventory_codes.py +0 -185
  265. celerp-2.5.0/celerp/main.py +0 -544
  266. celerp-2.5.0/celerp/migrations/_auto_stamp.py +0 -279
  267. celerp-2.5.0/celerp/migrations/_json_compat.py +0 -84
  268. celerp-2.5.0/celerp/migrations/env.py +0 -88
  269. celerp-2.5.0/celerp/migrations/versions/b3c4d5e6f7a8_expand_role_permissions_to_role_grants.py +0 -175
  270. celerp-2.5.0/celerp/migrations/versions/bc0d1e2f3a4b_barcode_unique_index.py +0 -119
  271. celerp-2.5.0/celerp/migrations/versions/d1e2f3a4b5c6_rfid_epc_unique_index.py +0 -44
  272. celerp-2.5.0/celerp/migrations/versions/f8a9b0c1d2e3_work_center_default_backfill.py +0 -93
  273. celerp-2.5.0/celerp/models/__init__.py +0 -12
  274. celerp-2.5.0/celerp/models/company.py +0 -80
  275. celerp-2.5.0/celerp/models/projections.py +0 -60
  276. celerp-2.5.0/celerp/models/sync_run.py +0 -36
  277. celerp-2.5.0/celerp/modules/api.py +0 -108
  278. celerp-2.5.0/celerp/modules/loader.py +0 -1309
  279. celerp-2.5.0/celerp/modules/migrations_runner.py +0 -236
  280. celerp-2.5.0/celerp/modules/slots.py +0 -130
  281. celerp-2.5.0/celerp/output/doc_print.py +0 -611
  282. celerp-2.5.0/celerp/output/pdf.py +0 -517
  283. celerp-2.5.0/celerp/projections/engine.py +0 -182
  284. celerp-2.5.0/celerp/routers/auth.py +0 -602
  285. celerp-2.5.0/celerp/routers/companies.py +0 -2473
  286. celerp-2.5.0/celerp/routers/debug.py +0 -294
  287. celerp-2.5.0/celerp/routers/doctor.py +0 -894
  288. celerp-2.5.0/celerp/routers/health.py +0 -1208
  289. celerp-2.5.0/celerp/routers/system.py +0 -105
  290. celerp-2.5.0/celerp/services/attachments.py +0 -300
  291. celerp-2.5.0/celerp/services/auth.py +0 -358
  292. celerp-2.5.0/celerp/services/auto_je.py +0 -1408
  293. celerp-2.5.0/celerp/services/backup.py +0 -200
  294. celerp-2.5.0/celerp/services/backup_import.py +0 -516
  295. celerp-2.5.0/celerp/services/cloud_entitlement.py +0 -229
  296. celerp-2.5.0/celerp/services/cost_visibility.py +0 -76
  297. celerp-2.5.0/celerp/services/demo.py +0 -1745
  298. celerp-2.5.0/celerp/services/field_schema.py +0 -247
  299. celerp-2.5.0/celerp/services/fulfill.py +0 -366
  300. celerp-2.5.0/celerp/services/holdings.py +0 -182
  301. celerp-2.5.0/celerp/services/landed_cost.py +0 -100
  302. celerp-2.5.0/celerp/services/money.py +0 -180
  303. celerp-2.5.0/celerp/services/payments.py +0 -110
  304. celerp-2.5.0/celerp/services/pick.py +0 -209
  305. celerp-2.5.0/celerp/services/pricing.py +0 -261
  306. celerp-2.5.0/celerp/services/reorder.py +0 -372
  307. celerp-2.5.0/celerp/services/units.py +0 -145
  308. celerp-2.5.0/celerp/session_gate.py +0 -77
  309. celerp-2.5.0/celerp.egg-info/PKG-INFO +0 -346
  310. celerp-2.5.0/celerp.egg-info/SOURCES.txt +0 -686
  311. celerp-2.5.0/celerp.egg-info/requires.txt +0 -49
  312. celerp-2.5.0/celerp.egg-info/scm_file_list.json +0 -1345
  313. celerp-2.5.0/celerp.egg-info/scm_version.json +0 -8
  314. celerp-2.5.0/conftest.py +0 -706
  315. celerp-2.5.0/default_modules/celerp-accounting/celerp_accounting/routes.py +0 -4194
  316. celerp-2.5.0/default_modules/celerp-accounting/tests/test_journal_gl_soa.py +0 -2390
  317. celerp-2.5.0/default_modules/celerp-admin/celerp_admin/routes.py +0 -909
  318. celerp-2.5.0/default_modules/celerp-ai/celerp_ai/routes.py +0 -1529
  319. celerp-2.5.0/default_modules/celerp-ai/tests/_fixtures.py +0 -91
  320. celerp-2.5.0/default_modules/celerp-ai/tests/fixtures/relay/error_402.json +0 -6
  321. celerp-2.5.0/default_modules/celerp-ai/tests/fixtures/relay/error_409.json +0 -6
  322. celerp-2.5.0/default_modules/celerp-ai/tests/fixtures/relay/error_429.json +0 -6
  323. celerp-2.5.0/default_modules/celerp-ai/tests/fixtures/relay/mutation_tool_call.json +0 -25
  324. celerp-2.5.0/default_modules/celerp-ai/tests/fixtures/relay/read_tool_call.json +0 -25
  325. celerp-2.5.0/default_modules/celerp-ai/tests/fixtures/relay/text_completion.json +0 -15
  326. celerp-2.5.0/default_modules/celerp-ai/tests/test_commercial_routing.py +0 -203
  327. celerp-2.5.0/default_modules/celerp-ai/tests/test_llm.py +0 -271
  328. celerp-2.5.0/default_modules/celerp-ai/tests/test_quota.py +0 -129
  329. celerp-2.5.0/default_modules/celerp-backup/celerp_backup/routes.py +0 -320
  330. celerp-2.5.0/default_modules/celerp-connectors/__init__.py +0 -65
  331. celerp-2.5.0/default_modules/celerp-connectors/celerp_connectors/routes.py +0 -301
  332. celerp-2.5.0/default_modules/celerp-connectors/tests/conftest.py +0 -82
  333. celerp-2.5.0/default_modules/celerp-connectors/tests/test_connector_correctness.py +0 -133
  334. celerp-2.5.0/default_modules/celerp-connectors/tests/test_connectors.py +0 -715
  335. celerp-2.5.0/default_modules/celerp-connectors/tests/test_credentials_routes.py +0 -163
  336. celerp-2.5.0/default_modules/celerp-connectors/tests/test_images.py +0 -138
  337. celerp-2.5.0/default_modules/celerp-connectors/tests/test_outbound.py +0 -293
  338. celerp-2.5.0/default_modules/celerp-connectors/tests/test_rate_limiting.py +0 -71
  339. celerp-2.5.0/default_modules/celerp-connectors/tests/test_shopify.py +0 -183
  340. celerp-2.5.0/default_modules/celerp-connectors/tests/test_wiring.py +0 -269
  341. celerp-2.5.0/default_modules/celerp-connectors/tests/test_woocommerce.py +0 -269
  342. celerp-2.5.0/default_modules/celerp-connectors/tests/test_woocommerce_webhooks.py +0 -114
  343. celerp-2.5.0/default_modules/celerp-connectors/tests/test_xero.py +0 -85
  344. celerp-2.5.0/default_modules/celerp-contacts/celerp_contacts/migrations.py +0 -199
  345. celerp-2.5.0/default_modules/celerp-contacts/celerp_contacts/routes.py +0 -1183
  346. celerp-2.5.0/default_modules/celerp-contacts/celerp_contacts/search.py +0 -75
  347. celerp-2.5.0/default_modules/celerp-contacts/celerp_contacts/services.py +0 -126
  348. celerp-2.5.0/default_modules/celerp-dashboard/celerp_dashboard/routes.py +0 -232
  349. celerp-2.5.0/default_modules/celerp-docs/__init__.py +0 -46
  350. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/api_setup.py +0 -17
  351. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/doc_constants.py +0 -48
  352. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/doc_projections.py +0 -496
  353. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/doc_service.py +0 -319
  354. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/routes.py +0 -7452
  355. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/routes_payments.py +0 -185
  356. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/routes_share.py +0 -744
  357. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/search.py +0 -68
  358. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/sequences.py +0 -179
  359. celerp-2.5.0/default_modules/celerp-docs/celerp_docs/taxes.py +0 -51
  360. celerp-2.5.0/default_modules/celerp-docs/tests/test_audits.py +0 -818
  361. celerp-2.5.0/default_modules/celerp-docs/tests/test_bulk_payment_alloc_lock.py +0 -502
  362. celerp-2.5.0/default_modules/celerp-docs/tests/test_list_concurrency.py +0 -291
  363. celerp-2.5.0/default_modules/celerp-docs/tests/test_list_outcome_concurrency.py +0 -632
  364. celerp-2.5.0/default_modules/celerp-docs/tests/test_list_query_pushdown.py +0 -410
  365. celerp-2.5.0/default_modules/celerp-docs/tests/test_memo_close_review_fixes.py +0 -450
  366. celerp-2.5.0/default_modules/celerp-docs/tests/test_memo_lifecycle_concurrency.py +0 -992
  367. celerp-2.5.0/default_modules/celerp-docs/tests/test_receive_sku_batch.py +0 -73
  368. celerp-2.5.0/default_modules/celerp-inventory/celerp_inventory/projections.py +0 -492
  369. celerp-2.5.0/default_modules/celerp-inventory/celerp_inventory/routes.py +0 -4246
  370. celerp-2.5.0/default_modules/celerp-inventory/celerp_inventory/routes_attachments.py +0 -584
  371. celerp-2.5.0/default_modules/celerp-inventory/celerp_inventory/search.py +0 -265
  372. celerp-2.5.0/default_modules/celerp-inventory/celerp_inventory/services.py +0 -1181
  373. celerp-2.5.0/default_modules/celerp-inventory/tests/test_import_service.py +0 -451
  374. celerp-2.5.0/default_modules/celerp-inventory/tests/test_landed_cost_projection.py +0 -82
  375. celerp-2.5.0/default_modules/celerp-labels/celerp_labels/routes.py +0 -309
  376. celerp-2.5.0/default_modules/celerp-manufacturing/celerp_manufacturing/routes.py +0 -1866
  377. celerp-2.5.0/default_modules/celerp-reports/celerp_reports/routes.py +0 -640
  378. celerp-2.5.0/default_modules/celerp-reports/tests/test_reports_full.py +0 -57
  379. celerp-2.5.0/default_modules/celerp-subscriptions/celerp_subscriptions/routes.py +0 -324
  380. celerp-2.5.0/default_modules/celerp-subscriptions/tests/test_subscriptions.py +0 -394
  381. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/agricultural.json +0 -26
  382. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/artwork.json +0 -23
  383. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/automotive.json +0 -24
  384. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/blank.json +0 -10
  385. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/books_media.json +0 -24
  386. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/coins_precious_metals.json +0 -24
  387. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/consulting.json +0 -19
  388. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/cosmetics.json +0 -25
  389. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/electronics.json +0 -26
  390. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/fashion.json +0 -27
  391. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/food_beverage.json +0 -27
  392. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/furniture.json +0 -26
  393. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/gemstones.json +0 -27
  394. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/hardware.json +0 -25
  395. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/watches.json +0 -22
  396. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/presets/wine_spirits.json +0 -24
  397. celerp-2.5.0/default_modules/celerp-verticals/celerp_verticals/routes.py +0 -257
  398. celerp-2.5.0/default_modules/celerp-verticals/tests/test_verticals.py +0 -361
  399. celerp-2.5.0/default_modules/celerp-verticals/tests/test_verticals_routers.py +0 -106
  400. celerp-2.5.0/default_modules/first_party.lock.json +0 -16
  401. celerp-2.5.0/pyproject.toml +0 -166
  402. celerp-2.5.0/test_helpers.py +0 -226
  403. celerp-2.5.0/ui/api_client.py +0 -3351
  404. celerp-2.5.0/ui/app.py +0 -546
  405. celerp-2.5.0/ui/components/currency.py +0 -121
  406. celerp-2.5.0/ui/components/report_kit.py +0 -340
  407. celerp-2.5.0/ui/components/shell.py +0 -2228
  408. celerp-2.5.0/ui/components/table.py +0 -2563
  409. celerp-2.5.0/ui/locales/am.json +0 -3160
  410. celerp-2.5.0/ui/locales/ar.json +0 -3160
  411. celerp-2.5.0/ui/locales/de.json +0 -3160
  412. celerp-2.5.0/ui/locales/en.json +0 -3160
  413. celerp-2.5.0/ui/locales/es.json +0 -3160
  414. celerp-2.5.0/ui/locales/fr.json +0 -3160
  415. celerp-2.5.0/ui/locales/id.json +0 -3160
  416. celerp-2.5.0/ui/locales/it.json +0 -3160
  417. celerp-2.5.0/ui/locales/ja.json +0 -3160
  418. celerp-2.5.0/ui/locales/pt.json +0 -3160
  419. celerp-2.5.0/ui/locales/th.json +0 -3160
  420. celerp-2.5.0/ui/locales/vi.json +0 -3160
  421. celerp-2.5.0/ui/routes/account.py +0 -627
  422. celerp-2.5.0/ui/routes/accounting.py +0 -734
  423. celerp-2.5.0/ui/routes/auth.py +0 -885
  424. celerp-2.5.0/ui/routes/contacts.py +0 -2439
  425. celerp-2.5.0/ui/routes/csv_import.py +0 -1265
  426. celerp-2.5.0/ui/routes/dashboard.py +0 -1101
  427. celerp-2.5.0/ui/routes/docs_import.py +0 -356
  428. celerp-2.5.0/ui/routes/documents.py +0 -9809
  429. celerp-2.5.0/ui/routes/inventory.py +0 -7715
  430. celerp-2.5.0/ui/routes/lists_import.py +0 -296
  431. celerp-2.5.0/ui/routes/settings.py +0 -4275
  432. celerp-2.5.0/ui/routes/settings_cloud.py +0 -1520
  433. celerp-2.5.0/ui/routes/settings_connectors.py +0 -1141
  434. celerp-2.5.0/ui/routes/settings_inventory.py +0 -675
  435. celerp-2.5.0/ui/routes/settings_manufacturing.py +0 -153
  436. celerp-2.5.0/ui/routes/settings_payments.py +0 -186
  437. celerp-2.5.0/ui/routes/setup.py +0 -708
  438. celerp-2.5.0/ui/routes/subscriptions.py +0 -481
  439. celerp-2.5.0/ui/static/app.css +0 -3339
  440. {celerp-2.5.0 → celerp-2.5.3}/CLA.md +0 -0
  441. {celerp-2.5.0 → celerp-2.5.3}/LICENSE +0 -0
  442. {celerp-2.5.0 → celerp-2.5.3}/LICENSING.md +0 -0
  443. {celerp-2.5.0 → celerp-2.5.3}/MANIFEST.in +0 -0
  444. {celerp-2.5.0 → celerp-2.5.3}/NOTICE +0 -0
  445. {celerp-2.5.0 → celerp-2.5.3}/alembic.ini +0 -0
  446. {celerp-2.5.0 → celerp-2.5.3}/celerp/__init__.py +0 -0
  447. {celerp-2.5.0 → celerp-2.5.3}/celerp/__main__.py +0 -0
  448. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/__init__.py +0 -0
  449. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/batch.py +0 -0
  450. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/cleanup.py +0 -0
  451. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/conversations.py +0 -0
  452. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/files.py +0 -0
  453. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/intent.py +0 -0
  454. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/llm.py +0 -0
  455. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/models.py +0 -0
  456. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/page_count.py +0 -0
  457. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/service.py +0 -0
  458. {celerp-2.5.0 → celerp-2.5.3}/celerp/ai/tools.py +0 -0
  459. {celerp-2.5.0 → celerp-2.5.3}/celerp/alembic.ini +0 -0
  460. {celerp-2.5.0 → celerp-2.5.3}/celerp/alembic_config.py +0 -0
  461. {celerp-2.5.0 → celerp-2.5.3}/celerp/capacity.py +0 -0
  462. {celerp-2.5.0 → celerp-2.5.3}/celerp/compat.py +0 -0
  463. {celerp-2.5.0 → celerp-2.5.3}/celerp/compute/__init__.py +0 -0
  464. {celerp-2.5.0 → celerp-2.5.3}/celerp/compute/aggregations.py +0 -0
  465. {celerp-2.5.0 → celerp-2.5.3}/celerp/compute/valuation.py +0 -0
  466. {celerp-2.5.0 → celerp-2.5.3}/celerp/connectors/__init__.py +0 -0
  467. {celerp-2.5.0 → celerp-2.5.3}/celerp/connectors/registry.py +0 -0
  468. {celerp-2.5.0 → celerp-2.5.3}/celerp/connectors/util.py +0 -0
  469. {celerp-2.5.0 → celerp-2.5.3}/celerp/constants.py +0 -0
  470. {celerp-2.5.0 → celerp-2.5.3}/celerp/db.py +0 -0
  471. {celerp-2.5.0 → celerp-2.5.3}/celerp/entitlement_preflight.py +0 -0
  472. {celerp-2.5.0 → celerp-2.5.3}/celerp/events/__init__.py +0 -0
  473. {celerp-2.5.0 → celerp-2.5.3}/celerp/events/types.py +0 -0
  474. {celerp-2.5.0 → celerp-2.5.3}/celerp/gateway/bootstrap.py +0 -0
  475. {celerp-2.5.0 → celerp-2.5.3}/celerp/gateway/fixtures/entitlement_flags_fixture.json +0 -0
  476. {celerp-2.5.0 → celerp-2.5.3}/celerp/importers/__init__.py +0 -0
  477. {celerp-2.5.0 → celerp-2.5.3}/celerp/importers/importer.py +0 -0
  478. {celerp-2.5.0 → celerp-2.5.3}/celerp/importers/schema.py +0 -0
  479. {celerp-2.5.0 → celerp-2.5.3}/celerp/importers/tabular.py +0 -0
  480. {celerp-2.5.0 → celerp-2.5.3}/celerp/middleware.py +0 -0
  481. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/README.md +0 -0
  482. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/_data_reconcile.py +0 -0
  483. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/script.py.mako +0 -0
  484. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/a0b1c2d3e4f5_seed_landed_cost_clearing_accounts.py +0 -0
  485. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/a1b2c3d4e5f6_add_doc_share_tokens.py +0 -0
  486. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/b1c2d3e4f5a6_add_supporter_badges.py +0 -0
  487. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/b2c3d4e5f6a7_add_import_batches.py +0 -0
  488. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/c1d2e3f4a5b6_add_marketplace.py +0 -0
  489. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/c2d3e4f5a6b7_add_is_sync_to_shopify.py +0 -0
  490. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/c4d5e6f7a8b9_account_cash_flow_category.py +0 -0
  491. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/c9d8e7f6a5b4_seed_shrinkage_writeoff_account.py +0 -0
  492. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/d0e1f2a3b4c5_add_share_token_expiry.py +0 -0
  493. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/d2e3f4a5b6c7_add_password_reset_token.py +0 -0
  494. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/d5e6f7a8b9c0_rename_fx_rounding_to_fx_difference.py +0 -0
  495. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/e3f4a5b6c7d8_add_company_is_active.py +0 -0
  496. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/e4f5a6b7c8d9_backfill_connector_idempotency_key.py +0 -0
  497. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/e7c9a1b3d5f2_work_center_default_columns.py +0 -0
  498. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/f1a2b3c4d5e6_move_accounts_marketplace_to_modules.py +0 -0
  499. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/f3a4b5c6d7e8_purge_session_registry.py +0 -0
  500. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/f6a7b8c9d0e1_seed_fx_rounding_account.py +0 -0
  501. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/fd5de461e14e_initial_schema.py +0 -0
  502. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/g1h2i3j4k5l6_add_consignment_flag.py +0 -0
  503. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/h2i3j4k5l6m7_add_bank_accounts_and_reconciliation.py +0 -0
  504. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/j4k5l6m7n8o9_labels_db_persistence.py +0 -0
  505. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/k5l6m7n8o9p0_add_reconciliation_v2.py +0 -0
  506. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/l6m7n8o9p0q1_add_sync_runs_table.py +0 -0
  507. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/m7n8o9p0q1r2_add_connector_configs_and_outbound_queue.py +0 -0
  508. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/n8o9p0q1r2s3_backfill_payment_date.py +0 -0
  509. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/o9p0q1r2s3t4_backfill_item_price_fields.py +0 -0
  510. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/p1q2r3s4t5u6_add_session_registry_and_user_auth_state.py +0 -0
  511. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/q2r3s4t5u6v7_add_system_runtime_state.py +0 -0
  512. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/r3s4t5u6v7w8_add_projections_company_entity_type_index.py +0 -0
  513. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/s4t5u6v7w8x9_drop_user_company_id_role.py +0 -0
  514. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/t5u6v7w8x9y0_seed_inventory_sub_accounts.py +0 -0
  515. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/u6v7w8x9y0z1_backfill_item_prices_from_attributes.py +0 -0
  516. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/v7w8x9y0z1a2_backfill_purchase_unit_defaults.py +0 -0
  517. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/w8x9y0z1a2b3_backfill_category_unit_defaults.py +0 -0
  518. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/x7y8z9a0b1c2_add_projection_created_at.py +0 -0
  519. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/y8z9a0b1c2d3_per_company_ledger_idempotency.py +0 -0
  520. {celerp-2.5.0 → celerp-2.5.3}/celerp/migrations/versions/z9a0b1c2d3e4_work_centers.py +0 -0
  521. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/accounting.py +0 -0
  522. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/ai.py +0 -0
  523. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/auth.py +0 -0
  524. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/base.py +0 -0
  525. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/connector_config.py +0 -0
  526. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/import_batch.py +0 -0
  527. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/ledger.py +0 -0
  528. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/marketplace.py +0 -0
  529. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/notification.py +0 -0
  530. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/share.py +0 -0
  531. {celerp-2.5.0 → celerp-2.5.3}/celerp/models/supporter.py +0 -0
  532. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/__init__.py +0 -0
  533. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/audit.py +0 -0
  534. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/demotion.py +0 -0
  535. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/importer.py +0 -0
  536. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/license.py +0 -0
  537. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/meta.py +0 -0
  538. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/references.py +0 -0
  539. {celerp-2.5.0 → celerp-2.5.3}/celerp/modules/registry.py +0 -0
  540. {celerp-2.5.0 → celerp-2.5.3}/celerp/notifications/__init__.py +0 -0
  541. {celerp-2.5.0 → celerp-2.5.3}/celerp/notifications/service.py +0 -0
  542. {celerp-2.5.0 → celerp-2.5.3}/celerp/notifications/sse.py +0 -0
  543. {celerp-2.5.0 → celerp-2.5.3}/celerp/output/__init__.py +0 -0
  544. {celerp-2.5.0 → celerp-2.5.3}/celerp/output/branding.py +0 -0
  545. {celerp-2.5.0 → celerp-2.5.3}/celerp/output/share_render.py +0 -0
  546. {celerp-2.5.0 → celerp-2.5.3}/celerp/projections/__init__.py +0 -0
  547. {celerp-2.5.0 → celerp-2.5.3}/celerp/projections/handlers/__init__.py +0 -0
  548. {celerp-2.5.0 → celerp-2.5.3}/celerp/projections/handlers/marketplace.py +0 -0
  549. {celerp-2.5.0 → celerp-2.5.3}/celerp/projections/handlers/scanning.py +0 -0
  550. {celerp-2.5.0 → celerp-2.5.3}/celerp/projections/handlers/shopify.py +0 -0
  551. {celerp-2.5.0 → celerp-2.5.3}/celerp/projections/handlers/system.py +0 -0
  552. {celerp-2.5.0 → celerp-2.5.3}/celerp/routers/__init__.py +0 -0
  553. {celerp-2.5.0 → celerp-2.5.3}/celerp/routers/attachments.py +0 -0
  554. {celerp-2.5.0 → celerp-2.5.3}/celerp/routers/events.py +0 -0
  555. {celerp-2.5.0 → celerp-2.5.3}/celerp/routers/ledger.py +0 -0
  556. {celerp-2.5.0 → celerp-2.5.3}/celerp/routers/notifications.py +0 -0
  557. {celerp-2.5.0 → celerp-2.5.3}/celerp/routers/search.py +0 -0
  558. {celerp-2.5.0 → celerp-2.5.3}/celerp/routers/stars.py +0 -0
  559. {celerp-2.5.0 → celerp-2.5.3}/celerp/schemas/__init__.py +0 -0
  560. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/__init__.py +0 -0
  561. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/activity_redaction.py +0 -0
  562. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/background.py +0 -0
  563. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/backup_export.py +0 -0
  564. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/backup_repo.py +0 -0
  565. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/backup_scheduler.py +0 -0
  566. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/backup_state.py +0 -0
  567. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/cogs_backfill.py +0 -0
  568. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/dev_release_guard.py +0 -0
  569. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/document_lines.py +0 -0
  570. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/email.py +0 -0
  571. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/je_keys.py +0 -0
  572. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/line_measures.py +0 -0
  573. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/list_behavior.py +0 -0
  574. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/permissions.py +0 -0
  575. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/relay_share.py +0 -0
  576. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/runtime_state.py +0 -0
  577. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/session_tracker.py +0 -0
  578. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/shipping.py +0 -0
  579. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/star_cta.py +0 -0
  580. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/status_doc_backfill.py +0 -0
  581. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/supporter_badge.py +0 -0
  582. {celerp-2.5.0 → celerp-2.5.3}/celerp/services/system_health.py +0 -0
  583. {celerp-2.5.0 → celerp-2.5.3}/celerp/tax_regimes.py +0 -0
  584. {celerp-2.5.0 → celerp-2.5.3}/celerp.egg-info/dependency_links.txt +0 -0
  585. {celerp-2.5.0 → celerp-2.5.3}/celerp.egg-info/entry_points.txt +0 -0
  586. {celerp-2.5.0 → celerp-2.5.3}/celerp.egg-info/top_level.txt +0 -0
  587. {celerp-2.5.0 → celerp-2.5.3}/conftest_support.py +0 -0
  588. {celerp-2.5.0 → celerp-2.5.3}/default_modules/__init__.py +0 -0
  589. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/LICENSE +0 -0
  590. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/__init__.py +0 -0
  591. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/__init__.py +0 -0
  592. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/api_setup.py +0 -0
  593. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/csv_parser.py +0 -0
  594. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/matcher.py +0 -0
  595. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/models.py +0 -0
  596. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/projections.py +0 -0
  597. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/search.py +0 -0
  598. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/celerp_accounting/ui_routes.py +0 -0
  599. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/balance-sheet.html +0 -0
  600. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/cash-flow.html +0 -0
  601. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/extended-journal-csv.csv +0 -0
  602. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/extended-journal-print.html +0 -0
  603. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/extended-journal.html +0 -0
  604. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/general-ledger.html +0 -0
  605. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/journal-csv.csv +0 -0
  606. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/journal-print.html +0 -0
  607. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/journal.html +0 -0
  608. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/ledger.html +0 -0
  609. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/pnl.html +0 -0
  610. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/statement.html +0 -0
  611. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/report_goldens/trial-balance.html +0 -0
  612. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_accounting_banking.py +0 -0
  613. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_accounting_banking_routers.py +0 -0
  614. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_accounting_gaps.py +0 -0
  615. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_accounting_import_idempotency.py +0 -0
  616. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_cash_flow.py +0 -0
  617. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_financial_reports_ui.py +0 -0
  618. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_journal_gl_soa_ui.py +0 -0
  619. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_reconciliation_agent.py +0 -0
  620. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_reconciliation_v2.py +0 -0
  621. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_reports_end_to_end.py +0 -0
  622. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-accounting/tests/test_route_permissions.py +0 -0
  623. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-admin/__init__.py +0 -0
  624. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-admin/celerp_admin/__init__.py +0 -0
  625. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-admin/celerp_admin/setup.py +0 -0
  626. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/__init__.py +0 -0
  627. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/celerp_ai/__init__.py +0 -0
  628. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/celerp_ai/setup.py +0 -0
  629. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/celerp_ai/ui_routes.py +0 -0
  630. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/conftest.py +0 -0
  631. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_agent_loop.py +0 -0
  632. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_batch.py +0 -0
  633. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_cleanup.py +0 -0
  634. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_confirm_race_pg.py +0 -0
  635. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_conversations.py +0 -0
  636. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_coverage_gaps.py +0 -0
  637. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_intent.py +0 -0
  638. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_live_agent.py +0 -0
  639. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_memory.py +0 -0
  640. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_models.py +0 -0
  641. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_page_count.py +0 -0
  642. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_router.py +0 -0
  643. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_routes_coverage.py +0 -0
  644. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_showcase_claims.py +0 -0
  645. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_ui_routes.py +0 -0
  646. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-ai/tests/test_workflows.py +0 -0
  647. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-backup/__init__.py +0 -0
  648. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-backup/celerp_backup/__init__.py +0 -0
  649. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-backup/celerp_backup/setup.py +0 -0
  650. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-connectors/celerp_connectors/__init__.py +0 -0
  651. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-connectors/celerp_connectors/models.py +0 -0
  652. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-connectors/tests/__init__.py +0 -0
  653. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-connectors/tests/test_compliance.py +0 -0
  654. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-connectors/tests/test_quickbooks.py +0 -0
  655. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-contacts/LICENSE +0 -0
  656. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-contacts/__init__.py +0 -0
  657. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-contacts/celerp_contacts/__init__.py +0 -0
  658. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-contacts/celerp_contacts/projections.py +0 -0
  659. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-contacts/celerp_contacts/ui_routes.py +0 -0
  660. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-dashboard/LICENSE +0 -0
  661. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-dashboard/__init__.py +0 -0
  662. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-dashboard/celerp_dashboard/__init__.py +0 -0
  663. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-dashboard/celerp_dashboard/setup.py +0 -0
  664. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/LICENSE +0 -0
  665. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/celerp_docs/__init__.py +0 -0
  666. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/celerp_docs/doc_email.py +0 -0
  667. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/celerp_docs/models_share.py +0 -0
  668. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/celerp_docs/ui_routes.py +0 -0
  669. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/conftest.py +0 -0
  670. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_consolidate_lots.py +0 -0
  671. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_cross_lot_settlement.py +0 -0
  672. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_freight_je.py +0 -0
  673. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_freight_lines.py +0 -0
  674. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_fulfill_no_split.py +0 -0
  675. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_fulfillment_activity.py +0 -0
  676. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_inbound_je_lifecycle.py +0 -0
  677. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_inventory_account_reconciliation.py +0 -0
  678. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_landed_receive.py +0 -0
  679. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_line_delete_persist.py +0 -0
  680. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_line_identifier.py +0 -0
  681. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_line_page_patch_truncate.py +0 -0
  682. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_list_ids_filter.py +0 -0
  683. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_list_page_no_full_state.py +0 -0
  684. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_list_quantity_integrity.py +0 -0
  685. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_list_sell_by_and_reference.py +0 -0
  686. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_memo_close.py +0 -0
  687. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_memo_close_projection.py +0 -0
  688. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_memo_line_labels.py +0 -0
  689. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_memo_unfulfilled_filter.py +0 -0
  690. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_payment_void_activity.py +0 -0
  691. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_send_visibility.py +0 -0
  692. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_service_lines.py +0 -0
  693. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_sold_label_ordering.py +0 -0
  694. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_void_guards.py +0 -0
  695. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-docs/tests/test_writeoffs.py +0 -0
  696. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/LICENSE +0 -0
  697. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/__init__.py +0 -0
  698. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/celerp_inventory/__init__.py +0 -0
  699. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/celerp_inventory/models_import_batch.py +0 -0
  700. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/celerp_inventory/routes_scanning.py +0 -0
  701. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/celerp_inventory/ui_routes.py +0 -0
  702. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/tests/test_import_agent_routes.py +0 -0
  703. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/tests/test_item_recipe_projection.py +0 -0
  704. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-inventory/tests/test_item_workflow_projection.py +0 -0
  705. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/LICENSE +0 -0
  706. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/__init__.py +0 -0
  707. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/__init__.py +0 -0
  708. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/am.json +0 -0
  709. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/ar.json +0 -0
  710. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/de.json +0 -0
  711. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/en.json +0 -0
  712. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/es.json +0 -0
  713. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/fr.json +0 -0
  714. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/id.json +0 -0
  715. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/it.json +0 -0
  716. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/ja.json +0 -0
  717. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/pt.json +0 -0
  718. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/th.json +0 -0
  719. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/locales/vi.json +0 -0
  720. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/models.py +0 -0
  721. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/presets.py +0 -0
  722. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/service.py +0 -0
  723. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/celerp_labels/ui_routes.py +0 -0
  724. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/requirements.txt +0 -0
  725. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/tests/test_labels.py +0 -0
  726. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-labels/tests/test_labels_module.py +0 -0
  727. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/LICENSE +0 -0
  728. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/__init__.py +0 -0
  729. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/__init__.py +0 -0
  730. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/costing.py +0 -0
  731. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/expansion.py +0 -0
  732. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/labor.py +0 -0
  733. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/migrations.py +0 -0
  734. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/projection_handler.py +0 -0
  735. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/search.py +0 -0
  736. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/celerp_manufacturing/ui_routes.py +0 -0
  737. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/requirements.txt +0 -0
  738. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_auto_complete_on_finalize.py +0 -0
  739. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_bom_removed.py +0 -0
  740. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_build_api.py +0 -0
  741. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_completion_lock_order.py +0 -0
  742. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_item_recipe_api.py +0 -0
  743. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_item_workflow_api.py +0 -0
  744. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_labor_providers.py +0 -0
  745. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_manufacture_from_doc.py +0 -0
  746. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_manufacturing.py +0 -0
  747. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_manufacturing_import_idempotency.py +0 -0
  748. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_manufacturing_module.py +0 -0
  749. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_mfg_events.py +0 -0
  750. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_phase2_manufacturing_validations.py +0 -0
  751. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_production_order.py +0 -0
  752. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_recipe_costing.py +0 -0
  753. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_recipe_expansion.py +0 -0
  754. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_recost_api.py +0 -0
  755. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_run_records.py +0 -0
  756. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_to_make_allocation.py +0 -0
  757. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_where_used.py +0 -0
  758. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_work_centers_and_settings.py +0 -0
  759. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-manufacturing/tests/test_workflow_time.py +0 -0
  760. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-reports/LICENSE +0 -0
  761. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-reports/__init__.py +0 -0
  762. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-reports/celerp_reports/__init__.py +0 -0
  763. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-reports/celerp_reports/api_setup.py +0 -0
  764. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-reports/celerp_reports/ui_routes.py +0 -0
  765. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-reports/tests/test_reports_unit.py +0 -0
  766. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-subscriptions/LICENSE +0 -0
  767. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-subscriptions/__init__.py +0 -0
  768. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-subscriptions/celerp_subscriptions/__init__.py +0 -0
  769. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-subscriptions/celerp_subscriptions/search.py +0 -0
  770. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-subscriptions/celerp_subscriptions/ui_routes.py +0 -0
  771. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-subscriptions/tests/test_subscriptions_ui.py +0 -0
  772. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/LICENSE +0 -0
  773. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/__init__.py +0 -0
  774. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/__init__.py +0 -0
  775. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/accessory_fashion.json +0 -0
  776. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/activewear.json +0 -0
  777. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/art_photography.json +0 -0
  778. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/audio_equipment.json +0 -0
  779. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/bag_handbag.json +0 -0
  780. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/banknote.json +0 -0
  781. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/beauty_tool.json +0 -0
  782. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/bed_bedroom.json +0 -0
  783. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/beer.json +0 -0
  784. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/beverage_nonalc.json +0 -0
  785. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/body_part_auto.json +0 -0
  786. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/book.json +0 -0
  787. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/bottoms.json +0 -0
  788. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/brake_suspension.json +0 -0
  789. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/bullion_coin.json +0 -0
  790. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/camera.json +0 -0
  791. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/colored_stone.json +0 -0
  792. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/comic.json +0 -0
  793. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/commercial_space.json +0 -0
  794. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/component_part.json +0 -0
  795. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/confectionery.json +0 -0
  796. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/consulting_service.json +0 -0
  797. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/decorative_art.json +0 -0
  798. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/diamond.json +0 -0
  799. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/drawing.json +0 -0
  800. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/dress_jumpsuit.json +0 -0
  801. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/electrical_auto.json +0 -0
  802. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/electrical_component.json +0 -0
  803. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/emerald.json +0 -0
  804. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/engine_part.json +0 -0
  805. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/fastener.json +0 -0
  806. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/fertilizer_chemical.json +0 -0
  807. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/film_video.json +0 -0
  808. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/fine_writing_instrument.json +0 -0
  809. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/fluid_lubricant.json +0 -0
  810. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/footwear.json +0 -0
  811. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/fragrance.json +0 -0
  812. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/fresh_food.json +0 -0
  813. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/fresh_produce.json +0 -0
  814. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/frozen_food.json +0 -0
  815. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/gaming_console.json +0 -0
  816. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/gold_bullion.json +0 -0
  817. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/grain_cereal.json +0 -0
  818. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/haircare.json +0 -0
  819. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/hand_tool.json +0 -0
  820. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/ingredient_bulk.json +0 -0
  821. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/interior_part.json +0 -0
  822. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/jewelry.json +0 -0
  823. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/kitchen_dining.json +0 -0
  824. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/laptop.json +0 -0
  825. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/lighting.json +0 -0
  826. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/livestock_feed.json +0 -0
  827. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/makeup.json +0 -0
  828. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/measuring_instrument.json +0 -0
  829. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/medal_token.json +0 -0
  830. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/mineral_specimen.json +0 -0
  831. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/mobile_phone.json +0 -0
  832. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/music_cd.json +0 -0
  833. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/music_vinyl.json +0 -0
  834. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/nail.json +0 -0
  835. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/numismatic_coin.json +0 -0
  836. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/outdoor_furniture.json +0 -0
  837. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/outerwear.json +0 -0
  838. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/packaged_food.json +0 -0
  839. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/painting.json +0 -0
  840. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/parking_bay.json +0 -0
  841. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/pearl.json +0 -0
  842. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/personal_care.json +0 -0
  843. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/pipe_plumbing.json +0 -0
  844. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/platinum_bullion.json +0 -0
  845. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/power_tool.json +0 -0
  846. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/print_edition.json +0 -0
  847. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/residential_unit.json +0 -0
  848. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/rough_gemstone.json +0 -0
  849. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/ruby.json +0 -0
  850. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/saas_plan.json +0 -0
  851. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/safety_ppe.json +0 -0
  852. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/sapphire.json +0 -0
  853. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/sculpture.json +0 -0
  854. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/seating.json +0 -0
  855. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/seeds.json +0 -0
  856. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/silver_bullion.json +0 -0
  857. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/skincare.json +0 -0
  858. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/soft_furnishing.json +0 -0
  859. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/software_addon.json +0 -0
  860. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/software_license.json +0 -0
  861. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/spirit.json +0 -0
  862. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/storage_furniture.json +0 -0
  863. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/swimwear.json +0 -0
  864. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/table_desk.json +0 -0
  865. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/tablet.json +0 -0
  866. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/tire_wheel.json +0 -0
  867. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/tops.json +0 -0
  868. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/trading_card.json +0 -0
  869. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/tv_display.json +0 -0
  870. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/video_game.json +0 -0
  871. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/watch.json +0 -0
  872. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/watch_strap.json +0 -0
  873. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/categories/wine.json +0 -0
  874. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/presets/property_rental.json +0 -0
  875. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/presets/saas.json +0 -0
  876. {celerp-2.5.0 → celerp-2.5.3}/default_modules/celerp-verticals/celerp_verticals/ui_routes.py +0 -0
  877. {celerp-2.5.0 → celerp-2.5.3}/legal/OFFICIAL-COMPONENTS.md +0 -0
  878. {celerp-2.5.0 → celerp-2.5.3}/legal/TRADEMARK.md +0 -0
  879. {celerp-2.5.0 → celerp-2.5.3}/packaging/winget/Celerp.Celerp.installer.yaml +0 -0
  880. {celerp-2.5.0 → celerp-2.5.3}/packaging/winget/Celerp.Celerp.locale.en-US.yaml +0 -0
  881. {celerp-2.5.0 → celerp-2.5.3}/packaging/winget/Celerp.Celerp.yaml +0 -0
  882. {celerp-2.5.0 → celerp-2.5.3}/packaging/winget/README.md +0 -0
  883. {celerp-2.5.0 → celerp-2.5.3}/setup.cfg +0 -0
  884. {celerp-2.5.0 → celerp-2.5.3}/ui/__init__.py +0 -0
  885. {celerp-2.5.0 → celerp-2.5.3}/ui/components/__init__.py +0 -0
  886. {celerp-2.5.0 → celerp-2.5.3}/ui/components/activity.py +0 -0
  887. {celerp-2.5.0 → celerp-2.5.3}/ui/components/attrs.py +0 -0
  888. {celerp-2.5.0 → celerp-2.5.3}/ui/components/backup.py +0 -0
  889. {celerp-2.5.0 → celerp-2.5.3}/ui/components/cloud_gate.py +0 -0
  890. {celerp-2.5.0 → celerp-2.5.3}/ui/components/files.py +0 -0
  891. {celerp-2.5.0 → celerp-2.5.3}/ui/components/journal.py +0 -0
  892. {celerp-2.5.0 → celerp-2.5.3}/ui/components/notes.py +0 -0
  893. {celerp-2.5.0 → celerp-2.5.3}/ui/components/phone.py +0 -0
  894. {celerp-2.5.0 → celerp-2.5.3}/ui/config.py +0 -0
  895. {celerp-2.5.0 → celerp-2.5.3}/ui/i18n.py +0 -0
  896. {celerp-2.5.0 → celerp-2.5.3}/ui/marketplace_catalog.py +0 -0
  897. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/__init__.py +0 -0
  898. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/accounting_import.py +0 -0
  899. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/commercial.py +0 -0
  900. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/events.py +0 -0
  901. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/financial_reports.py +0 -0
  902. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/manufacturing.py +0 -0
  903. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/modules_page.py +0 -0
  904. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/notifications.py +0 -0
  905. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/reconciliation.py +0 -0
  906. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/reports.py +0 -0
  907. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/search.py +0 -0
  908. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/settings_accounting.py +0 -0
  909. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/settings_contacts.py +0 -0
  910. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/settings_general.py +0 -0
  911. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/settings_import.py +0 -0
  912. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/settings_purchasing.py +0 -0
  913. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/settings_sales.py +0 -0
  914. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/stars.py +0 -0
  915. {celerp-2.5.0 → celerp-2.5.3}/ui/routes/subscriptions_import.py +0 -0
  916. {celerp-2.5.0 → celerp-2.5.3}/ui/security.py +0 -0
  917. {celerp-2.5.0 → celerp-2.5.3}/ui/static/htmx.min.js +0 -0
  918. {celerp-2.5.0 → celerp-2.5.3}/ui/static/icon.png +0 -0
  919. {celerp-2.5.0 → celerp-2.5.3}/ui/static/logo.png +0 -0
  920. {celerp-2.5.0 → celerp-2.5.3}/ui/static/vendor/intl-tel-input/img/flags.webp +0 -0
  921. {celerp-2.5.0 → celerp-2.5.3}/ui/static/vendor/intl-tel-input/img/flags@2x.webp +0 -0
  922. {celerp-2.5.0 → celerp-2.5.3}/ui/static/vendor/intl-tel-input/intlTelInput.min.css +0 -0
  923. {celerp-2.5.0 → celerp-2.5.3}/ui/static/vendor/intl-tel-input/intlTelInput.min.js +0 -0
  924. {celerp-2.5.0 → celerp-2.5.3}/ui/static/vendor/intl-tel-input/intlTelInputWithUtils.min.js +0 -0
  925. {celerp-2.5.0 → celerp-2.5.3}/ui/static/vendor/intl-tel-input/utils.js +0 -0
@@ -0,0 +1,190 @@
1
+ # Contributing to Celerp
2
+
3
+ Issues and PRs welcome. This guide covers the development workflow.
4
+
5
+ ## Contribution terms
6
+
7
+ Celerp is multi-licensed (see `LICENSING.md`). What the public *receives* depends on the component
8
+ (BUSL-1.1 core, MIT modules, proprietary layer). What you *grant us* when contributing is governed as
9
+ follows:
10
+
11
+ - **Anything accepted into an official Celerp repository** - including the MIT modules - requires a signed
12
+ **Contributor License Agreement** (`CLA.md`). The module stays MIT for everyone downstream; the CLA only
13
+ governs the rights you grant Celerp (so we can keep multi-licensing, move code between layers, and offer
14
+ commercial terms). Open an issue before substantial work and we will arrange signing.
15
+ - **Third-party modules you do not submit upstream** (e.g. your own marketplace modules) need no CLA - a
16
+ Developer Certificate of Origin sign-off (`git commit -s`) is sufficient for those. The MIT modules are
17
+ the recommended starting point: fork one, rename it (see `legal/TRADEMARK.md`), and license your derivative
18
+ however you wish.
19
+
20
+ **How CLA acceptance works.** Contributions to official Celerp repositories require a one-time CLA
21
+ acceptance per user. If you haven't accepted yet, you'll be linked to a page that shows the agreement and
22
+ records your acceptance so that we know that you've read our rules and expectations. After that you can
23
+ contribute freely.
24
+
25
+ Trademarks are not licensed by any code license; see `legal/TRADEMARK.md`.
26
+
27
+ ## Environment variables
28
+
29
+ | Variable | Default | Notes |
30
+ |----------|---------|-------|
31
+ | `DATABASE_URL` | _(required)_ | `postgresql+asyncpg://user:pass@localhost:5432/dbname` |
32
+ | `JWT_SECRET` | _(required)_ | Fatal on startup if unset or default in production |
33
+ | `ALLOW_INSECURE_JWT` | `false` | Set `true` in dev/CI |
34
+ | `CELERP_PUBLIC_URL` | _(optional)_ | Base URL for share links |
35
+ | `MODULE_DIR` | `default_modules` | Module package directory |
36
+ | `ENABLED_MODULES` | _(all)_ | Comma-separated list to load |
37
+
38
+ ## CLI commands (pip install)
39
+
40
+ ```bash
41
+ celerp init # first-time setup: DB + migrations + config, then launches the servers
42
+ celerp init --no-start # same setup, but exit WITHOUT launching (service-managed/headless)
43
+ celerp start # launch API + UI (e.g. from systemd, after `init --no-start`)
44
+ celerp migrate # apply pending migrations after an upgrade
45
+ celerp status # show config, DB connection, migration state
46
+ celerp demo # seed demo data
47
+ celerp upgrade # pip install --upgrade celerp + migrate
48
+ ```
49
+
50
+ ### Init flags
51
+
52
+ | Flag | Default | Notes |
53
+ |------|---------|-------|
54
+ | `--db-url` | `postgresql+asyncpg://celerp:celerp@localhost:5432/celerp` | PostgreSQL connection URL |
55
+ | `--api-port` | `8000` | API server port |
56
+ | `--ui-port` | `8080` | UI server port |
57
+ | `--cloud-token` | _(empty)_ | Celerp Connect token (optional) |
58
+ | `--force` | off | Overwrite existing config |
59
+ | `--yes` / `-y` | off | Skip the `--force` wipe confirmation (non-interactive) |
60
+ | `--no-start` | off | Set up, then exit WITHOUT launching servers (service-managed/headless) |
61
+ | `--embedded` | off | Force the bundled PostgreSQL even if a server is reachable (cannot combine with `--db-url`) |
62
+ | `--no-embedded` | off | Never fall back to the bundled PostgreSQL; require an external server |
63
+
64
+ To change ports after init, edit `~/.config/celerp/config.toml` directly.
65
+
66
+ ### External vs embedded PostgreSQL
67
+
68
+ `celerp init` picks the database automatically, and **an existing server always wins**:
69
+
70
+ 1. `--db-url` given → that external server (no detection).
71
+ 2. else a PostgreSQL server reachable on `localhost:5432` → use it (as root, init
72
+ provisions the role/database via `sudo -u postgres psql`; otherwise it prints the
73
+ `CREATE USER`/`CREATE DATABASE` to run).
74
+ 3. else the **bundled** PostgreSQL 17 — a self-contained cluster under
75
+ `~/.config/celerp/pgdata`, started from binaries shipped in the
76
+ [`celerp-postgres`](https://github.com/celerp/celerp-postgres) wheel. No `sudo`, no
77
+ system service. Available on Linux x86_64/arm64 (glibc and musl/Alpine) and Windows
78
+ x64, any CPython; on macOS 26+ opt in with `pip install celerp-postgres`. Elsewhere
79
+ init asks you to install PostgreSQL.
80
+
81
+ Override the detection with `--embedded` / `--no-embedded`. The chosen mode is written to
82
+ `config.toml` as `[database] embedded = true|<absent>` and preserved across `--force`
83
+ re-inits, so an external install never silently switches to the bundled cluster.
84
+
85
+ **Moving bundled data to an external server** (e.g. outgrowing single-machine): dump from
86
+ the bundled cluster and restore into the target, using the bundled tools so versions match.
87
+
88
+ ```bash
89
+ BIN=$(celerp status >/dev/null; python -c "from celerp import embedded_pg; print(embedded_pg.bin_dir())")
90
+ "$BIN/pg_dump" "$(python -c "from celerp import embedded_pg,pathlib; from celerp.config import config_path; print(embedded_pg.ensure_cluster(config_path().parent).replace('+asyncpg',''))")" \
91
+ | psql "postgresql://celerp:celerp@newhost:5432/celerp"
92
+ celerp init --force --db-url "postgresql+asyncpg://celerp:celerp@newhost:5432/celerp"
93
+ ```
94
+
95
+ ### Run as a service (systemd)
96
+
97
+ `celerp init` launches the servers and blocks (good for the one-command desktop
98
+ flow). For a headless box where a process manager owns the lifecycle, set up with
99
+ `--no-start` and let systemd run `celerp start`.
100
+
101
+ Install Celerp into a virtual environment. `celerp start` installs updates itself,
102
+ into the service user's Celerp config folder beside its data, so the install can stay
103
+ root-owned. When the service user cannot write to that folder, the update card shows
104
+ the pip command to run instead.
105
+
106
+ ```bash
107
+ sudo useradd --system --create-home celerp
108
+ sudo python3 -m venv /opt/celerp
109
+ sudo /opt/celerp/bin/pip install celerp
110
+ ```
111
+
112
+ ```bash
113
+ # First boot against a system PostgreSQL: provision DB + migrations + config, then
114
+ # exit (do not block). Run as root so init can create the role/database.
115
+ sudo /opt/celerp/bin/celerp init --no-start \
116
+ --db-url "postgresql+asyncpg://celerp:<password>@localhost:5432/celerp" \
117
+ --api-port 8000 --ui-port 8080
118
+ ```
119
+
120
+ Prefer the bundled database? Drop `--db-url` (and the `sudo` — the bundled cluster needs
121
+ neither) and run `celerp init --no-start` as the service user. The cluster then lives under
122
+ that user's `~/.config/celerp/pgdata`, and the systemd unit needs no `postgresql.service`
123
+ dependency.
124
+
125
+ ```ini
126
+ # /etc/systemd/system/celerp.service
127
+ [Unit]
128
+ Description=Celerp
129
+ # Drop the postgresql.service dependency line when using the bundled database.
130
+ After=network.target postgresql.service
131
+
132
+ [Service]
133
+ ExecStart=/opt/celerp/bin/celerp start
134
+ Restart=on-failure
135
+ User=celerp
136
+
137
+ [Install]
138
+ WantedBy=multi-user.target
139
+ ```
140
+
141
+ ```bash
142
+ sudo systemctl enable --now celerp
143
+ ```
144
+
145
+ New versions install automatically between 03:00 and 05:00 in the company's time
146
+ zone. Each update takes a backup first and is undone if the new version does not
147
+ start. The owner can turn this off in the update card in the notifications panel, or
148
+ set it in `config.toml`:
149
+
150
+ ```toml
151
+ [updates]
152
+ auto = false
153
+ ```
154
+
155
+ ## Troubleshooting
156
+
157
+ | Error | Fix |
158
+ |-------|-----|
159
+ | `fe_sendauth: no password supplied` | Run `set -a && source .env && set +a` before alembic |
160
+ | `password authentication failed` | Run `ALTER USER celerp WITH PASSWORD 'devpass';` via psql |
161
+ | `role "celerp" does not exist` | Run the `CREATE USER` command from README |
162
+ | `FATAL: JWT_SECRET is set to the default` | Generate with `openssl rand -hex 32` or set `ALLOW_INSECURE_JWT=true` |
163
+ | `Directory 'static' does not exist` | Run uvicorn from the repo root, not a subdirectory |
164
+ | `System already bootstrapped` | Drop and recreate the DB, or `DELETE FROM users;` via psql |
165
+
166
+ ## Module system
167
+
168
+ Each module is a self-contained Python package under `default_modules/`. A module registers:
169
+
170
+ - **API routes** via a FastAPI router
171
+ - **Projections** that materialize ledger events into queryable state
172
+ - **UI routes** via FastHTML
173
+ - **Nav slots** for sidebar entries
174
+
175
+ To add a new module, follow the pattern in any existing module (e.g. `celerp-inventory`). Modules are discovered and loaded at startup based on `ENABLED_MODULES`.
176
+
177
+ ## Coding style
178
+
179
+ - DRY, SOLID, KISS
180
+ - Small pure functions, explicit contracts, deterministic behavior
181
+ - Tests use SQLite in-memory - no Postgres required
182
+ - Name test files after the module they test
183
+ - Use `conftest.py` for shared fixtures
184
+
185
+ ## License
186
+
187
+ Celerp is multi-licensed (see [LICENSING.md](LICENSING.md)). Your contribution is governed by the
188
+ **Contribution terms** at the top of this file (a signed CLA for anything accepted upstream, including
189
+ the MIT modules; DCO for third-party modules you keep). License headers follow the per-path policy in
190
+ `LICENSING.md` and are enforced by `scripts/licenses.py`.
celerp-2.5.3/PKG-INFO ADDED
@@ -0,0 +1,399 @@
1
+ Metadata-Version: 2.4
2
+ Name: celerp
3
+ Version: 2.5.3
4
+ Summary: Free, self-hosted ERP for small businesses
5
+ License: Business Source License 1.1
6
+
7
+ License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved.
8
+ "Business Source License" is a trademark of MariaDB Corporation Ab.
9
+
10
+ -----------------------------------------------------------------------------
11
+
12
+ Parameters
13
+
14
+ Licensor: Noah Severs
15
+ Licensed Work: Celerp
16
+ The Licensed Work is (c) 2026 Noah Severs
17
+ Additional Use Grant: You may use the Licensed Work in production to operate
18
+ Celerp for your own internal business purposes, including
19
+ self-hosted use by your company and its affiliates. This
20
+ Additional Use Grant does not include offering the Licensed
21
+ Work, modified versions of the Licensed Work, or a
22
+ substantially similar competing product as a hosted service,
23
+ SaaS service, managed service, OEM product, or white-label
24
+ product to third parties without a commercial agreement with
25
+ Licensor.
26
+
27
+ Change Date: 2029-01-01
28
+
29
+ Change License: Apache License, Version 2.0
30
+
31
+ For information about alternative licensing arrangements for the Licensed Work
32
+ (including commercial licensing, OEM agreements, and white-label inquiries),
33
+ please contact https://celerp.com.
34
+
35
+ -----------------------------------------------------------------------------
36
+
37
+ Notice
38
+
39
+ The Business Source License (this document, or the "License") is not an Open
40
+ Source license. However, the Licensed Work will eventually be made available
41
+ under an Open Source License, as stated in this License.
42
+
43
+ -----------------------------------------------------------------------------
44
+
45
+ Terms
46
+
47
+ The Licensor hereby grants you the right to copy, modify, create derivative
48
+ works, redistribute, and make non-production use of the Licensed Work. The
49
+ Licensor may make an Additional Use Grant, above, permitting limited production
50
+ use.
51
+
52
+ Effective on the Change Date, or the fourth anniversary of the first publicly
53
+ available distribution of a specific version of the Licensed Work under this
54
+ License, whichever comes first, the Licensor hereby grants you rights under
55
+ the terms of the Change License, and the rights granted in the paragraph
56
+ above terminate.
57
+
58
+ If your use of the Licensed Work does not comply with the requirements
59
+ currently in effect as described in this License, you must purchase a
60
+ commercial license from the Licensor, its affiliated entities, or authorized
61
+ resellers, or you must refrain from using the Licensed Work.
62
+
63
+ All copies of the original and modified Licensed Work, and derivative works of
64
+ the Licensed Work, are subject to this License. This License applies
65
+ separately for each version of the Licensed Work and the Change Date may vary
66
+ for each version of the Licensed Work released by Licensor.
67
+
68
+ You must conspicuously display this License on each original or modified copy
69
+ of the Licensed Work. If you receive the Licensed Work in original or modified
70
+ form from a third party, the terms and conditions set forth in this License
71
+ apply to your use of that work.
72
+
73
+ Any use of the Licensed Work in violation of this License will automatically
74
+ terminate your rights under this License for the current and all other
75
+ versions of the Licensed Work.
76
+
77
+ This License does not grant you any right in any trademark or logo of Licensor
78
+ or its affiliates (provided that you may use a trademark or logo of Licensor
79
+ as expressly required by this License).
80
+
81
+ TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON AN
82
+ "AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS
83
+ OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF MERCHANTABILITY,
84
+ FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND TITLE.
85
+
86
+ MariaDB hereby grants you permission to use this License's text to license
87
+ your works, and to refer to it using the trademark "Business Source License",
88
+ as long as you comply with the Covenants of Licensor below.
89
+
90
+ -----------------------------------------------------------------------------
91
+
92
+ Covenants of Licensor
93
+
94
+ In consideration of the right to use this License's text and the "Business
95
+ Source License" name and trademark, Licensor covenants to MariaDB, and to all
96
+ other recipients of the licensed work to be provided by Licensor:
97
+
98
+ 1. To specify as the Change License the GPL Version 2.0 or any later version,
99
+ or a license that is compatible with GPL Version 2.0 or a later version,
100
+ where "compatible" means that software provided under the Change License can
101
+ be included in a program with software provided under GPL Version 2.0 or a
102
+ later version. Licensor may specify additional Change Licenses without
103
+ limitation.
104
+
105
+ 2. To either: (a) specify an additional grant of rights to use that does not
106
+ impose any additional restriction on the right granted in this License, as
107
+ the Additional Use Grant; or (b) insert the text "None".
108
+
109
+ 3. To specify a Change Date.
110
+
111
+ 4. Not to modify this License in any other way.
112
+
113
+ Project-URL: Homepage, https://celerp.com
114
+ Project-URL: Repository, https://github.com/celerp/celerp
115
+ Project-URL: Documentation, https://celerp.com/docs
116
+ Keywords: erp,inventory,accounting,self-hosted,fastapi
117
+ Classifier: Development Status :: 4 - Beta
118
+ Classifier: Intended Audience :: End Users/Desktop
119
+ Classifier: License :: Other/Proprietary License
120
+ Classifier: Programming Language :: Python :: 3
121
+ Classifier: Programming Language :: Python :: 3.10
122
+ Classifier: Programming Language :: Python :: 3.11
123
+ Classifier: Programming Language :: Python :: 3.12
124
+ Classifier: Topic :: Office/Business
125
+ Classifier: Topic :: Office/Business :: Financial :: Accounting
126
+ Requires-Python: >=3.10
127
+ Description-Content-Type: text/markdown
128
+ License-File: LICENSE
129
+ License-File: NOTICE
130
+ Requires-Dist: aiofiles==25.1.0
131
+ Requires-Dist: aiosmtplib==5.1.3
132
+ Requires-Dist: alembic==1.20.0
133
+ Requires-Dist: annotated-doc==0.0.5
134
+ Requires-Dist: annotated-types==0.8.0
135
+ Requires-Dist: anyio==4.15.1
136
+ Requires-Dist: async-timeout==5.0.1; python_full_version < "3.11"
137
+ Requires-Dist: asyncpg==0.31.0
138
+ Requires-Dist: bcrypt==5.0.0
139
+ Requires-Dist: beautifulsoup4==4.15.0
140
+ Requires-Dist: celerp-postgres==17.10.0; (platform_machine == "aarch64" and sys_platform == "linux") or (platform_machine == "x86_64" and sys_platform == "linux") or (platform_machine == "AMD64" and sys_platform == "win32")
141
+ Requires-Dist: certifi==2026.7.22
142
+ Requires-Dist: cffi==2.1.1; platform_python_implementation != "PyPy"
143
+ Requires-Dist: charset-normalizer==3.5.1
144
+ Requires-Dist: click==8.5.0
145
+ Requires-Dist: colorama==0.4.6; sys_platform == "win32"
146
+ Requires-Dist: cryptography==48.0.1; platform_machine == "x86_64" and sys_platform == "darwin"
147
+ Requires-Dist: cryptography==50.0.1; platform_machine != "x86_64" or sys_platform != "darwin"
148
+ Requires-Dist: deprecated==1.3.1; python_full_version < "3.12"
149
+ Requires-Dist: deprecated==3.0.0; python_full_version >= "3.12"
150
+ Requires-Dist: ecdsa==0.19.2
151
+ Requires-Dist: et-xmlfile==2.0.0
152
+ Requires-Dist: exceptiongroup==1.3.1; python_full_version < "3.11"
153
+ Requires-Dist: fastapi==0.141.1
154
+ Requires-Dist: fastcore==2.2.31
155
+ Requires-Dist: greenlet==3.5.6
156
+ Requires-Dist: h11==0.16.0
157
+ Requires-Dist: httpcore==1.0.9
158
+ Requires-Dist: httpcore2==2.13.1; sys_platform != "emscripten"
159
+ Requires-Dist: httptools==0.8.0
160
+ Requires-Dist: httpx==0.28.1
161
+ Requires-Dist: httpx2==2.13.1
162
+ Requires-Dist: httpx2-jsfetch==1.0; python_full_version >= "3.12" and sys_platform == "emscripten"
163
+ Requires-Dist: idna==3.20
164
+ Requires-Dist: itsdangerous==2.2.0
165
+ Requires-Dist: limits==5.8.0
166
+ Requires-Dist: mako==1.4.3
167
+ Requires-Dist: markupsafe==3.0.3
168
+ Requires-Dist: numpy==2.2.6; python_full_version < "3.11"
169
+ Requires-Dist: numpy==2.4.6; python_full_version == "3.11.*"
170
+ Requires-Dist: numpy==2.5.3; python_full_version >= "3.12"
171
+ Requires-Dist: oauthlib==4.0.0
172
+ Requires-Dist: openpyxl==3.1.5
173
+ Requires-Dist: packaging==26.3
174
+ Requires-Dist: passlib==1.7.4
175
+ Requires-Dist: pillow==12.3.0
176
+ Requires-Dist: psutil==7.2.2
177
+ Requires-Dist: psycopg2-binary==2.9.13
178
+ Requires-Dist: pyasn1==0.6.4
179
+ Requires-Dist: pycparser==3.0; implementation_name != "PyPy" and platform_python_implementation != "PyPy"
180
+ Requires-Dist: pydantic==2.13.5
181
+ Requires-Dist: pydantic-core==2.46.5
182
+ Requires-Dist: pydantic-settings==2.15.0
183
+ Requires-Dist: pypdf==6.19.0
184
+ Requires-Dist: python-barcode==0.16.1
185
+ Requires-Dist: python-dateutil==2.9.0.post0
186
+ Requires-Dist: python-dotenv==1.2.3
187
+ Requires-Dist: python-fasthtml==0.14.13
188
+ Requires-Dist: python-jose==3.5.0
189
+ Requires-Dist: python-multipart==0.0.32
190
+ Requires-Dist: pyyaml==6.0.3
191
+ Requires-Dist: qrcode==8.2
192
+ Requires-Dist: reportlab==5.0.1
193
+ Requires-Dist: rsa==4.9.1
194
+ Requires-Dist: six==1.17.0
195
+ Requires-Dist: slowapi==0.1.10
196
+ Requires-Dist: soupsieve==2.10
197
+ Requires-Dist: sqlalchemy==2.0.54; python_full_version < "3.11"
198
+ Requires-Dist: sqlalchemy==2.1.1; python_full_version >= "3.11"
199
+ Requires-Dist: starlette==1.7.0
200
+ Requires-Dist: tomli==2.4.1; python_full_version < "3.11"
201
+ Requires-Dist: truststore==0.10.4; sys_platform != "emscripten"
202
+ Requires-Dist: typing-extensions==4.16.0
203
+ Requires-Dist: typing-inspection==0.4.4
204
+ Requires-Dist: tzdata==2026.4
205
+ Requires-Dist: uvicorn==0.54.0
206
+ Requires-Dist: uvloop==0.22.1; platform_python_implementation != "PyPy" and sys_platform != "cygwin" and sys_platform != "win32"
207
+ Requires-Dist: watchfiles==1.3.0
208
+ Requires-Dist: websockets==16.1.1; python_full_version < "3.11"
209
+ Requires-Dist: websockets==17.1; python_full_version >= "3.11"
210
+ Requires-Dist: wrapt==2.5.0
211
+ Provides-Extra: dev
212
+ Requires-Dist: pytest>=8.0; extra == "dev"
213
+ Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
214
+ Requires-Dist: pytest-cov>=5.0; extra == "dev"
215
+ Requires-Dist: faker>=24.0; extra == "dev"
216
+ Requires-Dist: respx>=0.21; extra == "dev"
217
+ Requires-Dist: playwright<1.62,>=1.43; extra == "dev"
218
+ Requires-Dist: pytest-playwright>=0.5; extra == "dev"
219
+ Requires-Dist: pytest-timeout>=2.3; extra == "dev"
220
+ Requires-Dist: pytest-xdist>=3.5; extra == "dev"
221
+ Requires-Dist: testcontainers[postgres]>=4.0; extra == "dev"
222
+ Provides-Extra: prod
223
+ Requires-Dist: gunicorn==26.2.0; extra == "prod"
224
+ Dynamic: license-file
225
+
226
+ # Celerp
227
+
228
+ **Free business management software for you and your office. Setup in minutes. Easy enough for solo entrepreneurs and powerful enough for large enterprises**
229
+
230
+ Inventory, invoicing, purchasing, consignment, manufacturing, accounting, and CRM - in one app, on your computer. No subscription. No cloud required.
231
+
232
+ Website: [www.celerp.com](https://www.celerp.com)
233
+
234
+ Celerp is simple to use, flexible, customizable, and designed to transition your business into the AI age with no technical knowledge needed to setup your whole office. We want to put businesses back in charge of their data.
235
+
236
+ [![Downloads](https://static.pepy.tech/badge/celerp)](https://pepy.tech/project/celerp)
237
+ [![Tests](https://github.com/celerp/celerp/actions/workflows/ci.yml/badge.svg)](https://github.com/celerp/celerp/actions)
238
+ [![License](https://img.shields.io/badge/license-BUSL--1.1-blue)](LICENSE)
239
+
240
+ <!-- PRESS_KIT:root-hero start -->
241
+ ![Celerp manufacturing cost worksheet](docs/press-kit/screenshots/manufacturing-worksheet.png)
242
+ <!-- PRESS_KIT:root-hero end -->
243
+
244
+ ## Screenshots
245
+
246
+ Real double-entry accounting, multi-location inventory, manufacturing, and a built-in REST API - one self-hosted app.
247
+
248
+ <!-- PRESS_KIT:root-grid start -->
249
+ | | |
250
+ |---|---|
251
+ | ![Dashboard with revenue trend, receivables aging, and inventory mix](docs/press-kit/screenshots/dashboard.png)<br>**Dashboard** - revenue trend, AR aging, inventory mix | ![Multi-location inventory with barcode scanning and valuation](docs/press-kit/screenshots/inventory.png)<br>**Inventory** - multi-location, barcode, valuation |
252
+ | ![Double-entry trial balance that ties out to zero](docs/press-kit/screenshots/trial-balance.png)<br>**Trial balance** - ties out to zero | ![Balance sheet generated from the event-sourced ledger](docs/press-kit/screenshots/balance-sheet.png)<br>**Balance sheet** - live from the ledger |
253
+ | ![Production planning by status, priority, and due date](docs/press-kit/screenshots/production-planning.png)<br>**Production planning** - work orders, priorities, due dates | ![International shipping document with commercial invoice and customs detail](docs/press-kit/screenshots/international-shipping-document.png)<br>**Shipping documents** - commercial invoice and customs |
254
+ | ![Built-in REST API for integrations](docs/press-kit/screenshots/rest-api.png)<br>**REST API** - integrate anything | ![Customer statement of account showing receivables](docs/press-kit/screenshots/statement-of-account.png)<br>**Statement of account** - customer AR at a glance |
255
+ <!-- PRESS_KIT:root-grid end -->
256
+
257
+ More in the [press kit](docs/press-kit/).
258
+
259
+ ---
260
+
261
+ ## Install
262
+
263
+ | Platform | Link |
264
+ |----------|------|
265
+ | Windows (.exe) | [Download](https://celerp.com/download-thanks.html?dl=win) |
266
+ | Linux (.deb) | [Download](https://celerp.com/download-thanks.html?dl=linux) |
267
+ | macOS (.dmg) | [Download](https://celerp.com/download-thanks.html?dl=mac) |
268
+
269
+ **Double-click. No account. No credit card. Your computer securely becomes the server for your office**
270
+
271
+ Or install via pip:
272
+
273
+ ```bash
274
+ pip install celerp
275
+ celerp init # sets up the database and launches Celerp
276
+ ```
277
+
278
+ Open **http://localhost:8080**. Done.
279
+ Your office can securely access the system at your IP address :8080.
280
+
281
+ No PostgreSQL to install: `celerp init` uses your existing PostgreSQL server if one is
282
+ running, and otherwise starts a self-contained bundled database — no `sudo`, no system
283
+ service. Point it at a specific server with `celerp init --db-url postgresql+asyncpg://…`.
284
+
285
+ Running headless or under a process manager? Use `celerp init --no-start` to set up
286
+ without launching, then have your service run `celerp start` — see
287
+ [Run as a service (systemd)](CONTRIBUTING.md#run-as-a-service-systemd).
288
+ Updates install automatically overnight; the owner can turn that off from the update
289
+ card in the notifications panel.
290
+
291
+ ---
292
+
293
+ ## What's inside
294
+
295
+ - Track inventory across locations, scan barcodes, print labels
296
+ - Send invoices, purchase orders, quotations, credit notes
297
+ - Double-entry accounting with chart of accounts, P&L, balance sheet
298
+ - Connect Shopify, WooCommerce, QuickBooks, Xero
299
+ - Manufacturing - BOMs, production orders, merge/split/transform
300
+ - CRM - contacts, pipeline, memos, activity feed
301
+ - Recurring subscriptions with automatic invoicing
302
+ - CSV import/export everything - idempotent, audited, column-mapped
303
+ - Multi-company from one install
304
+ - Role-based permissions - five access levels (viewer, operator, manager, admin, owner) for controlled employee access
305
+ - Works offline, no internet required
306
+
307
+ ---
308
+
309
+ ## How it works
310
+
311
+ Celerp runs on your machine and keeps its primary database local. Optional Connect features can relay remote access or send selected data to Celerp cloud services.
312
+
313
+ - **No setup** - the desktop app bundles Postgres, runs migrations on launch, opens in your browser
314
+ - **No lock-in** - your data stays in a standard Postgres database you control
315
+ - **Teams** - run as a local server, teammates connect over the LAN
316
+
317
+ ---
318
+
319
+ ## Modules
320
+
321
+ Every business domain is a self-contained module. The full set ships with the download:
322
+
323
+ | Module | What it does |
324
+ |--------|-------------|
325
+ | `celerp-inventory` | Items, stock levels, locations, barcode scanning, valuation |
326
+ | `celerp-contacts` | Contacts, addresses, tags, notes, file attachments |
327
+ | `celerp-docs` | Invoices, POs, quotations, credit notes, receipts |
328
+ | `celerp-accounting` | Chart of accounts, journal entries, P&L, balance sheet |
329
+ | `celerp-reports` | AR/AP aging, sales, purchases, inventory valuation |
330
+ | `celerp-subscriptions` | Recurring billing, auto-invoice generation |
331
+ | `celerp-manufacturing` | BOMs, production orders, merge/split/transform |
332
+ | `celerp-labels` | Label printing, barcode generation |
333
+ | `celerp-verticals` | Industry presets - configure for your business type on first run |
334
+
335
+ The onboarding wizard lets you pick your industry. Modules can be toggled any time at **Settings > Modules**.
336
+
337
+ ### Build your own
338
+
339
+ > "My vision for Celerp is that anyone with AI coding tools can describe what their business needs and get a module that imports right into the system."
340
+ >
341
+ > Noah Severs, Founder
342
+
343
+ Every feature above is a module on one loader API, and you can build against the same API. A module is a Python package you drop into Celerp's `modules/` folder; it adds its own tables, API routes, and UI pages, no fork or build step.
344
+
345
+ - [**celerp-module-template**](https://github.com/celerp/celerp-module-template) - a working example module you can run in about ten minutes, plus a lint script
346
+ - [**Build a module**](https://www.celerp.com/docs/modules) - the guide
347
+ - [**community-modules**](https://github.com/celerp/community-modules) - a directory of community-built modules, and how to list yours
348
+
349
+ ---
350
+
351
+ ## Architecture
352
+
353
+ - **Event-sourced** - every change is an immutable ledger entry, projections materialize queryable state
354
+ - **Modular** - each domain is a plugin with its own models, routes, and projections
355
+ - **Python/FastAPI** backend, **FastHTML** UI, embedded **PostgreSQL**
356
+ - SQLite in-memory for tests - no external dependencies to run the test suite
357
+
358
+ ---
359
+
360
+ ## Development
361
+
362
+ ```bash
363
+ git clone git@github.com:celerp/celerp.git
364
+ cd celerp
365
+ python3 -m venv .venv && source .venv/bin/activate
366
+ pip install -e ".[dev]"
367
+ celerp init # creates DB, runs migrations, starts servers
368
+ ```
369
+
370
+ `celerp init` boots a bundled PostgreSQL when no server is running, so no `sudo` and no
371
+ system Postgres are required. To develop against your own server instead, pass
372
+ `--db-url postgresql+asyncpg://…`.
373
+
374
+ Open **http://localhost:8080**. Run tests with `pytest tests/`.
375
+
376
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for environment variables, troubleshooting, and coding guidelines.
377
+
378
+ ---
379
+
380
+ ## Contributing
381
+
382
+ Issues and PRs welcome. The module system makes it straightforward to add new business domains without touching the kernel.
383
+
384
+ ---
385
+
386
+ ## License
387
+
388
+ **Free to download. Free to self-host. Free to build on.**
389
+
390
+ Celerp is open-core:
391
+
392
+ - **Source-available core engine** under the [Business Source License 1.1](LICENSE) -
393
+ self-hosting permitted, contributions welcome.
394
+ - **An MIT-licensed module ecosystem** - the default business modules are MIT, so you can
395
+ fork them, build your own modules, and ship them however you like. See [LICENSING.md](LICENSING.md).
396
+ - **A source available application** (official UI, document/PDF output and AI & Connect services).
397
+
398
+ See [LICENSING.md](LICENSING.md) for the full map and [TRADEMARK.md](legal/TRADEMARK.md) for use of the Celerp
399
+ name. One restriction: don't resell Celerp itself as a competing product.