celerp 2.4.0__tar.gz → 2.5.2__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 (924) hide show
  1. celerp-2.5.2/CONTRIBUTING.md +190 -0
  2. celerp-2.5.2/PKG-INFO +397 -0
  3. celerp-2.5.2/README.md +174 -0
  4. celerp-2.5.2/celerp/ai/batch.py +348 -0
  5. celerp-2.5.2/celerp/ai/conversations.py +665 -0
  6. celerp-2.5.2/celerp/ai/files.py +77 -0
  7. celerp-2.5.2/celerp/ai/llm.py +236 -0
  8. celerp-2.5.2/celerp/ai/memory.py +102 -0
  9. celerp-2.5.2/celerp/ai/page_count.py +43 -0
  10. celerp-2.5.2/celerp/ai/quota.py +62 -0
  11. celerp-2.5.2/celerp/ai/service.py +483 -0
  12. celerp-2.5.2/celerp/ai/tools.py +434 -0
  13. celerp-2.5.2/celerp/cli.py +1586 -0
  14. celerp-2.5.2/celerp/config.py +799 -0
  15. celerp-2.5.2/celerp/config_store.py +248 -0
  16. celerp-2.5.2/celerp/connectors/base.py +194 -0
  17. celerp-2.5.2/celerp/connectors/daily_scheduler.py +186 -0
  18. celerp-2.5.2/celerp/connectors/http.py +103 -0
  19. celerp-2.5.2/celerp/connectors/images.py +155 -0
  20. celerp-2.5.2/celerp/connectors/outbound_queue.py +550 -0
  21. celerp-2.5.2/celerp/connectors/ownership.py +556 -0
  22. celerp-2.5.2/celerp/connectors/quickbooks.py +343 -0
  23. celerp-2.5.2/celerp/connectors/relay_token.py +89 -0
  24. celerp-2.5.2/celerp/connectors/remote_state.py +185 -0
  25. celerp-2.5.2/celerp/connectors/shopify.py +370 -0
  26. celerp-2.5.2/celerp/connectors/sync_runner.py +491 -0
  27. celerp-2.5.2/celerp/connectors/upsert.py +105 -0
  28. celerp-2.5.2/celerp/connectors/webhooks.py +225 -0
  29. celerp-2.5.2/celerp/connectors/woocommerce.py +1054 -0
  30. celerp-2.5.2/celerp/connectors/xero.py +481 -0
  31. celerp-2.5.2/celerp/db_url.py +16 -0
  32. celerp-2.5.2/celerp/embedded_pg.py +356 -0
  33. celerp-2.5.2/celerp/events/engine.py +373 -0
  34. celerp-2.5.2/celerp/events/schemas.py +1339 -0
  35. celerp-2.5.2/celerp/gateway/__init__.py +98 -0
  36. celerp-2.5.2/celerp/gateway/bootstrap.py +104 -0
  37. celerp-2.5.2/celerp/gateway/client.py +1095 -0
  38. celerp-2.5.2/celerp/gateway/state.py +984 -0
  39. celerp-2.5.2/celerp/importers/tabular.py +588 -0
  40. celerp-2.5.2/celerp/inventory_codes.py +188 -0
  41. celerp-2.5.2/celerp/main.py +614 -0
  42. celerp-2.5.2/celerp/migrations/_auto_stamp.py +362 -0
  43. celerp-2.5.2/celerp/migrations/_json_compat.py +103 -0
  44. celerp-2.5.2/celerp/migrations/env.py +88 -0
  45. celerp-2.5.2/celerp/migrations/versions/b3c4d5e6f7a8_expand_role_permissions_to_role_grants.py +165 -0
  46. celerp-2.5.2/celerp/migrations/versions/bc0d1e2f3a4b_barcode_unique_index.py +38 -0
  47. celerp-2.5.2/celerp/migrations/versions/d1e2f3a4b5c6_rfid_epc_unique_index.py +32 -0
  48. celerp-2.5.2/celerp/migrations/versions/f8a9b0c1d2e3_work_center_default_backfill.py +114 -0
  49. celerp-2.5.2/celerp/migrations/versions/g4b5c6d7e8f9_add_install_owner.py +40 -0
  50. celerp-2.5.2/celerp/migrations/versions/h5c6d7e8f9a0_backfill_install_owner.py +54 -0
  51. celerp-2.5.2/celerp/migrations/versions/i6d7e8f9a0b1_add_sync_run_attention.py +25 -0
  52. celerp-2.5.2/celerp/migrations/versions/j7e8f9a0b1c2_add_connector_sources.py +32 -0
  53. celerp-2.5.2/celerp/migrations/versions/k8f9a0b1c2d3_drop_physical_code_unique_indexes.py +40 -0
  54. celerp-2.5.2/celerp/models/__init__.py +13 -0
  55. celerp-2.5.2/celerp/models/company.py +88 -0
  56. celerp-2.5.2/celerp/models/connector_source.py +26 -0
  57. celerp-2.5.2/celerp/models/projections.py +36 -0
  58. celerp-2.5.2/celerp/models/sync_run.py +44 -0
  59. celerp-2.5.2/celerp/modules/api.py +38 -0
  60. celerp-2.5.2/celerp/modules/license.py +246 -0
  61. celerp-2.5.2/celerp/modules/loader.py +1334 -0
  62. celerp-2.5.2/celerp/modules/migrations_runner.py +236 -0
  63. celerp-2.5.2/celerp/modules/slots.py +131 -0
  64. celerp-2.5.2/celerp/output/doc_print.py +629 -0
  65. celerp-2.5.2/celerp/output/document_context.py +98 -0
  66. celerp-2.5.2/celerp/output/pdf.py +535 -0
  67. celerp-2.5.2/celerp/projections/engine.py +182 -0
  68. celerp-2.5.2/celerp/routers/auth.py +641 -0
  69. celerp-2.5.2/celerp/routers/companies.py +2602 -0
  70. celerp-2.5.2/celerp/routers/debug.py +276 -0
  71. celerp-2.5.2/celerp/routers/doctor.py +926 -0
  72. celerp-2.5.2/celerp/routers/health.py +1397 -0
  73. celerp-2.5.2/celerp/routers/search.py +305 -0
  74. celerp-2.5.2/celerp/routers/system.py +161 -0
  75. celerp-2.5.2/celerp/runtime.py +153 -0
  76. celerp-2.5.2/celerp/services/attachments.py +508 -0
  77. celerp-2.5.2/celerp/services/auth.py +383 -0
  78. celerp-2.5.2/celerp/services/auto_je.py +1468 -0
  79. celerp-2.5.2/celerp/services/background.py +22 -0
  80. celerp-2.5.2/celerp/services/backup.py +228 -0
  81. celerp-2.5.2/celerp/services/backup_import.py +607 -0
  82. celerp-2.5.2/celerp/services/backup_repo.py +250 -0
  83. celerp-2.5.2/celerp/services/business_time.py +27 -0
  84. celerp-2.5.2/celerp/services/cloud_entitlement.py +315 -0
  85. celerp-2.5.2/celerp/services/cost_visibility.py +80 -0
  86. celerp-2.5.2/celerp/services/csv_export.py +60 -0
  87. celerp-2.5.2/celerp/services/demo.py +1738 -0
  88. celerp-2.5.2/celerp/services/field_schema.py +259 -0
  89. celerp-2.5.2/celerp/services/fulfill.py +375 -0
  90. celerp-2.5.2/celerp/services/holdings.py +249 -0
  91. celerp-2.5.2/celerp/services/landed_cost.py +104 -0
  92. celerp-2.5.2/celerp/services/money.py +276 -0
  93. celerp-2.5.2/celerp/services/outbound_url.py +195 -0
  94. celerp-2.5.2/celerp/services/payments.py +112 -0
  95. celerp-2.5.2/celerp/services/physical_codes.py +152 -0
  96. celerp-2.5.2/celerp/services/pick.py +250 -0
  97. celerp-2.5.2/celerp/services/terms.py +82 -0
  98. celerp-2.5.2/celerp/services/update.py +855 -0
  99. celerp-2.5.2/celerp/session_gate.py +58 -0
  100. celerp-2.5.2/celerp.egg-info/PKG-INFO +397 -0
  101. celerp-2.5.2/celerp.egg-info/SOURCES.txt +701 -0
  102. celerp-2.5.2/celerp.egg-info/requires.txt +116 -0
  103. celerp-2.5.2/celerp.egg-info/scm_file_list.json +1392 -0
  104. celerp-2.5.2/conftest.py +708 -0
  105. celerp-2.5.2/constraints.txt +227 -0
  106. celerp-2.5.2/default_modules/celerp-accounting/celerp_accounting/routes.py +4194 -0
  107. celerp-2.5.2/default_modules/celerp-accounting/tests/test_accounting_banking_routers.py +84 -0
  108. celerp-2.5.2/default_modules/celerp-accounting/tests/test_accounting_gaps.py +641 -0
  109. celerp-2.5.2/default_modules/celerp-accounting/tests/test_cash_flow.py +443 -0
  110. celerp-2.5.2/default_modules/celerp-accounting/tests/test_journal_gl_soa.py +2392 -0
  111. celerp-2.5.2/default_modules/celerp-accounting/tests/test_reconciliation_agent.py +330 -0
  112. celerp-2.5.2/default_modules/celerp-accounting/tests/test_route_permissions.py +74 -0
  113. celerp-2.5.2/default_modules/celerp-admin/celerp_admin/routes.py +955 -0
  114. celerp-2.5.2/default_modules/celerp-ai/celerp_ai/routes.py +1526 -0
  115. celerp-2.5.2/default_modules/celerp-ai/celerp_ai/ui_routes.py +2170 -0
  116. celerp-2.5.2/default_modules/celerp-ai/tests/_fixtures.py +140 -0
  117. celerp-2.5.2/default_modules/celerp-ai/tests/test_agent_loop.py +560 -0
  118. celerp-2.5.2/default_modules/celerp-ai/tests/test_batch.py +465 -0
  119. celerp-2.5.2/default_modules/celerp-ai/tests/test_commercial_routing.py +198 -0
  120. celerp-2.5.2/default_modules/celerp-ai/tests/test_confirm_race_pg.py +155 -0
  121. celerp-2.5.2/default_modules/celerp-ai/tests/test_conversations.py +779 -0
  122. celerp-2.5.2/default_modules/celerp-ai/tests/test_coverage_gaps.py +409 -0
  123. celerp-2.5.2/default_modules/celerp-ai/tests/test_live_agent.py +161 -0
  124. celerp-2.5.2/default_modules/celerp-ai/tests/test_llm.py +270 -0
  125. celerp-2.5.2/default_modules/celerp-ai/tests/test_page_count.py +115 -0
  126. celerp-2.5.2/default_modules/celerp-ai/tests/test_quota.py +129 -0
  127. celerp-2.5.2/default_modules/celerp-ai/tests/test_router.py +295 -0
  128. celerp-2.5.2/default_modules/celerp-ai/tests/test_routes_coverage.py +958 -0
  129. celerp-2.5.2/default_modules/celerp-ai/tests/test_showcase_claims.py +80 -0
  130. celerp-2.5.2/default_modules/celerp-ai/tests/test_ui_routes.py +785 -0
  131. celerp-2.5.2/default_modules/celerp-ai/tests/test_workflows.py +409 -0
  132. celerp-2.5.2/default_modules/celerp-backup/celerp_backup/routes.py +343 -0
  133. celerp-2.5.2/default_modules/celerp-connectors/__init__.py +64 -0
  134. celerp-2.5.2/default_modules/celerp-connectors/celerp_connectors/routes.py +758 -0
  135. celerp-2.5.2/default_modules/celerp-connectors/tests/conftest.py +99 -0
  136. celerp-2.5.2/default_modules/celerp-connectors/tests/test_connector_correctness.py +136 -0
  137. celerp-2.5.2/default_modules/celerp-connectors/tests/test_connectors.py +826 -0
  138. celerp-2.5.2/default_modules/celerp-connectors/tests/test_credentials_routes.py +590 -0
  139. celerp-2.5.2/default_modules/celerp-connectors/tests/test_images.py +147 -0
  140. celerp-2.5.2/default_modules/celerp-connectors/tests/test_outbound.py +231 -0
  141. celerp-2.5.2/default_modules/celerp-connectors/tests/test_rate_limiting.py +117 -0
  142. celerp-2.5.2/default_modules/celerp-connectors/tests/test_shopify.py +220 -0
  143. celerp-2.5.2/default_modules/celerp-connectors/tests/test_wiring.py +415 -0
  144. celerp-2.5.2/default_modules/celerp-connectors/tests/test_woocommerce.py +762 -0
  145. celerp-2.5.2/default_modules/celerp-connectors/tests/test_woocommerce_webhooks.py +140 -0
  146. celerp-2.5.2/default_modules/celerp-connectors/tests/test_xero.py +89 -0
  147. celerp-2.5.2/default_modules/celerp-contacts/celerp_contacts/routes.py +1181 -0
  148. celerp-2.5.2/default_modules/celerp-contacts/celerp_contacts/services.py +149 -0
  149. celerp-2.5.2/default_modules/celerp-docs/celerp_docs/doc_projections.py +492 -0
  150. celerp-2.5.2/default_modules/celerp-docs/celerp_docs/doc_service.py +1306 -0
  151. celerp-2.5.2/default_modules/celerp-docs/celerp_docs/routes.py +8223 -0
  152. celerp-2.5.2/default_modules/celerp-docs/celerp_docs/routes_payments.py +205 -0
  153. celerp-2.5.2/default_modules/celerp-docs/celerp_docs/routes_share.py +812 -0
  154. celerp-2.5.2/default_modules/celerp-docs/tests/test_audits.py +817 -0
  155. celerp-2.5.2/default_modules/celerp-docs/tests/test_cross_lot_settlement.py +168 -0
  156. celerp-2.5.2/default_modules/celerp-docs/tests/test_freight_je.py +130 -0
  157. celerp-2.5.2/default_modules/celerp-docs/tests/test_freight_lines.py +45 -0
  158. celerp-2.5.2/default_modules/celerp-docs/tests/test_fulfill_no_split.py +59 -0
  159. celerp-2.5.2/default_modules/celerp-docs/tests/test_fulfillment_activity.py +113 -0
  160. celerp-2.5.2/default_modules/celerp-docs/tests/test_inbound_je_lifecycle.py +113 -0
  161. celerp-2.5.2/default_modules/celerp-docs/tests/test_inventory_account_reconciliation.py +90 -0
  162. celerp-2.5.2/default_modules/celerp-docs/tests/test_landed_receive.py +121 -0
  163. celerp-2.5.2/default_modules/celerp-docs/tests/test_line_delete_persist.py +85 -0
  164. celerp-2.5.2/default_modules/celerp-docs/tests/test_line_identifier.py +185 -0
  165. celerp-2.5.2/default_modules/celerp-docs/tests/test_line_page_patch_truncate.py +263 -0
  166. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_concurrency.py +382 -0
  167. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_ids_filter.py +44 -0
  168. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_outcome_concurrency.py +633 -0
  169. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_page_no_full_state.py +154 -0
  170. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_quantity_integrity.py +370 -0
  171. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_query_pushdown.py +506 -0
  172. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_reprice.py +410 -0
  173. celerp-2.5.2/default_modules/celerp-docs/tests/test_list_sell_by_and_reference.py +103 -0
  174. celerp-2.5.2/default_modules/celerp-docs/tests/test_memo_close.py +176 -0
  175. celerp-2.5.2/default_modules/celerp-docs/tests/test_memo_close_review_fixes.py +450 -0
  176. celerp-2.5.2/default_modules/celerp-docs/tests/test_memo_lifecycle_concurrency.py +1082 -0
  177. celerp-2.5.2/default_modules/celerp-docs/tests/test_memo_line_labels.py +191 -0
  178. celerp-2.5.2/default_modules/celerp-docs/tests/test_memo_unfulfilled_filter.py +47 -0
  179. celerp-2.5.2/default_modules/celerp-docs/tests/test_payment_void_activity.py +55 -0
  180. celerp-2.5.2/default_modules/celerp-docs/tests/test_receive_sku_batch.py +74 -0
  181. celerp-2.5.2/default_modules/celerp-docs/tests/test_send_visibility.py +188 -0
  182. celerp-2.5.2/default_modules/celerp-docs/tests/test_service_lines.py +66 -0
  183. celerp-2.5.2/default_modules/celerp-docs/tests/test_sold_label_ordering.py +95 -0
  184. celerp-2.5.2/default_modules/celerp-docs/tests/test_void_guards.py +105 -0
  185. celerp-2.5.2/default_modules/celerp-docs/tests/test_writeoffs.py +711 -0
  186. celerp-2.5.2/default_modules/celerp-inventory/celerp_inventory/projections.py +525 -0
  187. celerp-2.5.2/default_modules/celerp-inventory/celerp_inventory/routes.py +4427 -0
  188. celerp-2.5.2/default_modules/celerp-inventory/celerp_inventory/routes_attachments.py +641 -0
  189. celerp-2.5.2/default_modules/celerp-inventory/celerp_inventory/search.py +262 -0
  190. celerp-2.5.2/default_modules/celerp-inventory/celerp_inventory/services.py +2252 -0
  191. celerp-2.5.2/default_modules/celerp-inventory/tests/test_import_agent_routes.py +242 -0
  192. celerp-2.5.2/default_modules/celerp-inventory/tests/test_import_service.py +555 -0
  193. celerp-2.5.2/default_modules/celerp-inventory/tests/test_physical_mutation_concurrency.py +235 -0
  194. celerp-2.5.2/default_modules/celerp-labels/celerp_labels/routes.py +305 -0
  195. celerp-2.5.2/default_modules/celerp-manufacturing/celerp_manufacturing/routes.py +1866 -0
  196. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_auto_complete_on_finalize.py +171 -0
  197. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_bom_removed.py +119 -0
  198. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_build_api.py +181 -0
  199. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_item_recipe_api.py +130 -0
  200. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_item_workflow_api.py +120 -0
  201. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_manufacture_from_doc.py +167 -0
  202. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_manufacturing.py +190 -0
  203. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_manufacturing_module.py +622 -0
  204. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_phase2_manufacturing_validations.py +78 -0
  205. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_production_order.py +111 -0
  206. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_recost_api.py +125 -0
  207. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_run_records.py +445 -0
  208. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_to_make_allocation.py +224 -0
  209. celerp-2.5.2/default_modules/celerp-manufacturing/tests/test_work_centers_and_settings.py +393 -0
  210. celerp-2.5.2/default_modules/celerp-reports/tests/test_reports_full.py +57 -0
  211. celerp-2.5.2/default_modules/celerp-subscriptions/celerp_subscriptions/routes.py +335 -0
  212. celerp-2.5.2/default_modules/celerp-subscriptions/tests/test_subscriptions.py +412 -0
  213. celerp-2.5.2/default_modules/celerp-verticals/celerp_verticals/routes.py +257 -0
  214. celerp-2.5.2/default_modules/celerp-verticals/tests/test_verticals_routers.py +106 -0
  215. celerp-2.5.2/default_modules/first_party.lock.json +16 -0
  216. celerp-2.5.2/pyproject.toml +201 -0
  217. celerp-2.5.2/test_helpers.py +226 -0
  218. celerp-2.5.2/ui/api_client.py +3409 -0
  219. celerp-2.5.2/ui/app.py +548 -0
  220. celerp-2.5.2/ui/components/activity.py +1111 -0
  221. celerp-2.5.2/ui/components/cloud_gate.py +236 -0
  222. celerp-2.5.2/ui/components/report_kit.py +332 -0
  223. celerp-2.5.2/ui/components/shell.py +2326 -0
  224. celerp-2.5.2/ui/components/table.py +2578 -0
  225. celerp-2.5.2/ui/config.py +178 -0
  226. celerp-2.5.2/ui/locales/am.json +3205 -0
  227. celerp-2.5.2/ui/locales/ar.json +3205 -0
  228. celerp-2.5.2/ui/locales/de.json +3205 -0
  229. celerp-2.5.2/ui/locales/en.json +3205 -0
  230. celerp-2.5.2/ui/locales/es.json +3205 -0
  231. celerp-2.5.2/ui/locales/fr.json +3205 -0
  232. celerp-2.5.2/ui/locales/id.json +3205 -0
  233. celerp-2.5.2/ui/locales/it.json +3205 -0
  234. celerp-2.5.2/ui/locales/ja.json +3205 -0
  235. celerp-2.5.2/ui/locales/pt.json +3205 -0
  236. celerp-2.5.2/ui/locales/th.json +3205 -0
  237. celerp-2.5.2/ui/locales/vi.json +3205 -0
  238. celerp-2.5.2/ui/routes/account.py +631 -0
  239. celerp-2.5.2/ui/routes/auth.py +936 -0
  240. celerp-2.5.2/ui/routes/contacts.py +2456 -0
  241. celerp-2.5.2/ui/routes/csv_import.py +1265 -0
  242. celerp-2.5.2/ui/routes/dashboard.py +1100 -0
  243. celerp-2.5.2/ui/routes/documents.py +9937 -0
  244. celerp-2.5.2/ui/routes/inventory.py +7972 -0
  245. celerp-2.5.2/ui/routes/settings.py +4355 -0
  246. celerp-2.5.2/ui/routes/settings_cloud.py +1567 -0
  247. celerp-2.5.2/ui/routes/settings_connectors.py +1470 -0
  248. celerp-2.5.2/ui/routes/settings_inventory.py +672 -0
  249. celerp-2.5.2/ui/routes/settings_payments.py +184 -0
  250. celerp-2.5.2/ui/routes/setup.py +708 -0
  251. celerp-2.5.2/ui/routes/subscriptions.py +467 -0
  252. celerp-2.5.2/ui/routes/system_update.py +57 -0
  253. celerp-2.5.2/ui/static/app.css +3364 -0
  254. celerp-2.4.0/CONTRIBUTING.md +0 -169
  255. celerp-2.4.0/PKG-INFO +0 -345
  256. celerp-2.4.0/README.md +0 -172
  257. celerp-2.4.0/celerp/ai/batch.py +0 -228
  258. celerp-2.4.0/celerp/ai/commands.py +0 -184
  259. celerp-2.4.0/celerp/ai/conversations.py +0 -234
  260. celerp-2.4.0/celerp/ai/files.py +0 -49
  261. celerp-2.4.0/celerp/ai/llm.py +0 -110
  262. celerp-2.4.0/celerp/ai/memory.py +0 -102
  263. celerp-2.4.0/celerp/ai/page_count.py +0 -67
  264. celerp-2.4.0/celerp/ai/quota.py +0 -63
  265. celerp-2.4.0/celerp/ai/service.py +0 -272
  266. celerp-2.4.0/celerp/ai/tools.py +0 -287
  267. celerp-2.4.0/celerp/cli.py +0 -1379
  268. celerp-2.4.0/celerp/config.py +0 -566
  269. celerp-2.4.0/celerp/config_store.py +0 -203
  270. celerp-2.4.0/celerp/connectors/base.py +0 -159
  271. celerp-2.4.0/celerp/connectors/daily_scheduler.py +0 -173
  272. celerp-2.4.0/celerp/connectors/http.py +0 -81
  273. celerp-2.4.0/celerp/connectors/images.py +0 -148
  274. celerp-2.4.0/celerp/connectors/quickbooks.py +0 -290
  275. celerp-2.4.0/celerp/connectors/relay_token.py +0 -50
  276. celerp-2.4.0/celerp/connectors/shopify.py +0 -382
  277. celerp-2.4.0/celerp/connectors/sync_runner.py +0 -228
  278. celerp-2.4.0/celerp/connectors/upsert.py +0 -76
  279. celerp-2.4.0/celerp/connectors/webhooks.py +0 -116
  280. celerp-2.4.0/celerp/connectors/woocommerce.py +0 -457
  281. celerp-2.4.0/celerp/connectors/xero.py +0 -263
  282. celerp-2.4.0/celerp/embedded_pg.py +0 -302
  283. celerp-2.4.0/celerp/events/engine.py +0 -212
  284. celerp-2.4.0/celerp/events/schemas.py +0 -1339
  285. celerp-2.4.0/celerp/gateway/__init__.py +0 -102
  286. celerp-2.4.0/celerp/gateway/bootstrap.py +0 -101
  287. celerp-2.4.0/celerp/gateway/client.py +0 -952
  288. celerp-2.4.0/celerp/gateway/state.py +0 -893
  289. celerp-2.4.0/celerp/inventory_codes.py +0 -185
  290. celerp-2.4.0/celerp/main.py +0 -502
  291. celerp-2.4.0/celerp/migrations/_auto_stamp.py +0 -279
  292. celerp-2.4.0/celerp/migrations/_json_compat.py +0 -84
  293. celerp-2.4.0/celerp/migrations/env.py +0 -88
  294. celerp-2.4.0/celerp/migrations/versions/b3c4d5e6f7a8_expand_role_permissions_to_role_grants.py +0 -175
  295. celerp-2.4.0/celerp/migrations/versions/bc0d1e2f3a4b_barcode_unique_index.py +0 -119
  296. celerp-2.4.0/celerp/migrations/versions/d1e2f3a4b5c6_rfid_epc_unique_index.py +0 -44
  297. celerp-2.4.0/celerp/migrations/versions/f8a9b0c1d2e3_work_center_default_backfill.py +0 -93
  298. celerp-2.4.0/celerp/models/__init__.py +0 -12
  299. celerp-2.4.0/celerp/models/company.py +0 -80
  300. celerp-2.4.0/celerp/models/projections.py +0 -60
  301. celerp-2.4.0/celerp/models/sync_run.py +0 -36
  302. celerp-2.4.0/celerp/modules/api.py +0 -114
  303. celerp-2.4.0/celerp/modules/license.py +0 -244
  304. celerp-2.4.0/celerp/modules/loader.py +0 -1309
  305. celerp-2.4.0/celerp/modules/migrations_runner.py +0 -236
  306. celerp-2.4.0/celerp/modules/slots.py +0 -130
  307. celerp-2.4.0/celerp/output/doc_print.py +0 -611
  308. celerp-2.4.0/celerp/output/pdf.py +0 -517
  309. celerp-2.4.0/celerp/projections/engine.py +0 -182
  310. celerp-2.4.0/celerp/routers/auth.py +0 -534
  311. celerp-2.4.0/celerp/routers/companies.py +0 -2495
  312. celerp-2.4.0/celerp/routers/debug.py +0 -294
  313. celerp-2.4.0/celerp/routers/doctor.py +0 -894
  314. celerp-2.4.0/celerp/routers/health.py +0 -905
  315. celerp-2.4.0/celerp/routers/search.py +0 -305
  316. celerp-2.4.0/celerp/routers/system.py +0 -105
  317. celerp-2.4.0/celerp/services/attachments.py +0 -300
  318. celerp-2.4.0/celerp/services/auth.py +0 -339
  319. celerp-2.4.0/celerp/services/auto_je.py +0 -1408
  320. celerp-2.4.0/celerp/services/backup.py +0 -200
  321. celerp-2.4.0/celerp/services/backup_import.py +0 -516
  322. celerp-2.4.0/celerp/services/backup_repo.py +0 -241
  323. celerp-2.4.0/celerp/services/cost_visibility.py +0 -76
  324. celerp-2.4.0/celerp/services/demo.py +0 -1745
  325. celerp-2.4.0/celerp/services/field_schema.py +0 -247
  326. celerp-2.4.0/celerp/services/fulfill.py +0 -366
  327. celerp-2.4.0/celerp/services/holdings.py +0 -182
  328. celerp-2.4.0/celerp/services/landed_cost.py +0 -100
  329. celerp-2.4.0/celerp/services/money.py +0 -180
  330. celerp-2.4.0/celerp/services/payments.py +0 -113
  331. celerp-2.4.0/celerp/services/pick.py +0 -209
  332. celerp-2.4.0/celerp/session_gate.py +0 -80
  333. celerp-2.4.0/celerp.egg-info/PKG-INFO +0 -345
  334. celerp-2.4.0/celerp.egg-info/SOURCES.txt +0 -669
  335. celerp-2.4.0/celerp.egg-info/requires.txt +0 -48
  336. celerp-2.4.0/celerp.egg-info/scm_file_list.json +0 -1311
  337. celerp-2.4.0/celerp.egg-info/scm_version.json +0 -8
  338. celerp-2.4.0/conftest.py +0 -706
  339. celerp-2.4.0/default_modules/celerp-accounting/celerp_accounting/routes.py +0 -3906
  340. celerp-2.4.0/default_modules/celerp-accounting/tests/test_accounting_banking_routers.py +0 -84
  341. celerp-2.4.0/default_modules/celerp-accounting/tests/test_accounting_gaps.py +0 -641
  342. celerp-2.4.0/default_modules/celerp-accounting/tests/test_cash_flow.py +0 -443
  343. celerp-2.4.0/default_modules/celerp-accounting/tests/test_journal_gl_soa.py +0 -2390
  344. celerp-2.4.0/default_modules/celerp-accounting/tests/test_route_permissions.py +0 -75
  345. celerp-2.4.0/default_modules/celerp-admin/celerp_admin/routes.py +0 -909
  346. celerp-2.4.0/default_modules/celerp-ai/celerp_ai/routes.py +0 -755
  347. celerp-2.4.0/default_modules/celerp-ai/celerp_ai/ui_routes.py +0 -1111
  348. celerp-2.4.0/default_modules/celerp-ai/tests/test_batch.py +0 -338
  349. celerp-2.4.0/default_modules/celerp-ai/tests/test_commercial_routing.py +0 -219
  350. celerp-2.4.0/default_modules/celerp-ai/tests/test_conversations.py +0 -324
  351. celerp-2.4.0/default_modules/celerp-ai/tests/test_coverage_gaps.py +0 -595
  352. celerp-2.4.0/default_modules/celerp-ai/tests/test_llm.py +0 -158
  353. celerp-2.4.0/default_modules/celerp-ai/tests/test_page_count.py +0 -172
  354. celerp-2.4.0/default_modules/celerp-ai/tests/test_quota.py +0 -110
  355. celerp-2.4.0/default_modules/celerp-ai/tests/test_router.py +0 -299
  356. celerp-2.4.0/default_modules/celerp-ai/tests/test_routes_coverage.py +0 -394
  357. celerp-2.4.0/default_modules/celerp-ai/tests/test_service.py +0 -217
  358. celerp-2.4.0/default_modules/celerp-ai/tests/test_tools.py +0 -354
  359. celerp-2.4.0/default_modules/celerp-backup/celerp_backup/routes.py +0 -318
  360. celerp-2.4.0/default_modules/celerp-connectors/__init__.py +0 -65
  361. celerp-2.4.0/default_modules/celerp-connectors/celerp_connectors/routes.py +0 -301
  362. celerp-2.4.0/default_modules/celerp-connectors/tests/conftest.py +0 -82
  363. celerp-2.4.0/default_modules/celerp-connectors/tests/test_connector_correctness.py +0 -133
  364. celerp-2.4.0/default_modules/celerp-connectors/tests/test_connectors.py +0 -715
  365. celerp-2.4.0/default_modules/celerp-connectors/tests/test_credentials_routes.py +0 -163
  366. celerp-2.4.0/default_modules/celerp-connectors/tests/test_images.py +0 -138
  367. celerp-2.4.0/default_modules/celerp-connectors/tests/test_outbound.py +0 -293
  368. celerp-2.4.0/default_modules/celerp-connectors/tests/test_rate_limiting.py +0 -71
  369. celerp-2.4.0/default_modules/celerp-connectors/tests/test_shopify.py +0 -183
  370. celerp-2.4.0/default_modules/celerp-connectors/tests/test_wiring.py +0 -269
  371. celerp-2.4.0/default_modules/celerp-connectors/tests/test_woocommerce.py +0 -269
  372. celerp-2.4.0/default_modules/celerp-connectors/tests/test_woocommerce_webhooks.py +0 -114
  373. celerp-2.4.0/default_modules/celerp-connectors/tests/test_xero.py +0 -85
  374. celerp-2.4.0/default_modules/celerp-contacts/celerp_contacts/routes.py +0 -1140
  375. celerp-2.4.0/default_modules/celerp-contacts/celerp_contacts/services.py +0 -126
  376. celerp-2.4.0/default_modules/celerp-docs/celerp_docs/doc_projections.py +0 -496
  377. celerp-2.4.0/default_modules/celerp-docs/celerp_docs/doc_service.py +0 -319
  378. celerp-2.4.0/default_modules/celerp-docs/celerp_docs/routes.py +0 -7279
  379. celerp-2.4.0/default_modules/celerp-docs/celerp_docs/routes_payments.py +0 -183
  380. celerp-2.4.0/default_modules/celerp-docs/celerp_docs/routes_share.py +0 -744
  381. celerp-2.4.0/default_modules/celerp-docs/tests/test_audits.py +0 -818
  382. celerp-2.4.0/default_modules/celerp-docs/tests/test_cross_lot_settlement.py +0 -168
  383. celerp-2.4.0/default_modules/celerp-docs/tests/test_freight_je.py +0 -130
  384. celerp-2.4.0/default_modules/celerp-docs/tests/test_freight_lines.py +0 -45
  385. celerp-2.4.0/default_modules/celerp-docs/tests/test_fulfill_no_split.py +0 -59
  386. celerp-2.4.0/default_modules/celerp-docs/tests/test_fulfillment_activity.py +0 -113
  387. celerp-2.4.0/default_modules/celerp-docs/tests/test_inbound_je_lifecycle.py +0 -113
  388. celerp-2.4.0/default_modules/celerp-docs/tests/test_inventory_account_reconciliation.py +0 -90
  389. celerp-2.4.0/default_modules/celerp-docs/tests/test_landed_receive.py +0 -121
  390. celerp-2.4.0/default_modules/celerp-docs/tests/test_line_delete_persist.py +0 -85
  391. celerp-2.4.0/default_modules/celerp-docs/tests/test_line_identifier.py +0 -185
  392. celerp-2.4.0/default_modules/celerp-docs/tests/test_line_page_patch_truncate.py +0 -263
  393. celerp-2.4.0/default_modules/celerp-docs/tests/test_list_concurrency.py +0 -291
  394. celerp-2.4.0/default_modules/celerp-docs/tests/test_list_outcome_concurrency.py +0 -632
  395. celerp-2.4.0/default_modules/celerp-docs/tests/test_list_page_no_full_state.py +0 -154
  396. celerp-2.4.0/default_modules/celerp-docs/tests/test_list_quantity_integrity.py +0 -370
  397. celerp-2.4.0/default_modules/celerp-docs/tests/test_list_query_pushdown.py +0 -410
  398. celerp-2.4.0/default_modules/celerp-docs/tests/test_list_sell_by_and_reference.py +0 -103
  399. celerp-2.4.0/default_modules/celerp-docs/tests/test_memo_close.py +0 -176
  400. celerp-2.4.0/default_modules/celerp-docs/tests/test_memo_close_review_fixes.py +0 -450
  401. celerp-2.4.0/default_modules/celerp-docs/tests/test_memo_lifecycle_concurrency.py +0 -992
  402. celerp-2.4.0/default_modules/celerp-docs/tests/test_memo_line_labels.py +0 -191
  403. celerp-2.4.0/default_modules/celerp-docs/tests/test_memo_unfulfilled_filter.py +0 -47
  404. celerp-2.4.0/default_modules/celerp-docs/tests/test_payment_void_activity.py +0 -55
  405. celerp-2.4.0/default_modules/celerp-docs/tests/test_receive_sku_batch.py +0 -73
  406. celerp-2.4.0/default_modules/celerp-docs/tests/test_send_visibility.py +0 -188
  407. celerp-2.4.0/default_modules/celerp-docs/tests/test_service_lines.py +0 -66
  408. celerp-2.4.0/default_modules/celerp-docs/tests/test_sold_label_ordering.py +0 -95
  409. celerp-2.4.0/default_modules/celerp-docs/tests/test_void_guards.py +0 -105
  410. celerp-2.4.0/default_modules/celerp-docs/tests/test_writeoffs.py +0 -711
  411. celerp-2.4.0/default_modules/celerp-inventory/celerp_inventory/projections.py +0 -492
  412. celerp-2.4.0/default_modules/celerp-inventory/celerp_inventory/routes.py +0 -4166
  413. celerp-2.4.0/default_modules/celerp-inventory/celerp_inventory/routes_attachments.py +0 -584
  414. celerp-2.4.0/default_modules/celerp-inventory/celerp_inventory/search.py +0 -265
  415. celerp-2.4.0/default_modules/celerp-inventory/celerp_inventory/services.py +0 -289
  416. celerp-2.4.0/default_modules/celerp-labels/celerp_labels/routes.py +0 -309
  417. celerp-2.4.0/default_modules/celerp-manufacturing/celerp_manufacturing/routes.py +0 -1858
  418. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_auto_complete_on_finalize.py +0 -171
  419. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_bom_removed.py +0 -119
  420. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_build_api.py +0 -181
  421. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_item_recipe_api.py +0 -130
  422. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_item_workflow_api.py +0 -120
  423. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_manufacture_from_doc.py +0 -167
  424. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_manufacturing.py +0 -190
  425. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_manufacturing_module.py +0 -622
  426. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_phase2_manufacturing_validations.py +0 -78
  427. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_production_order.py +0 -111
  428. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_recost_api.py +0 -125
  429. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_run_records.py +0 -445
  430. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_to_make_allocation.py +0 -224
  431. celerp-2.4.0/default_modules/celerp-manufacturing/tests/test_work_centers_and_settings.py +0 -393
  432. celerp-2.4.0/default_modules/celerp-reports/tests/test_reports_full.py +0 -57
  433. celerp-2.4.0/default_modules/celerp-subscriptions/celerp_subscriptions/routes.py +0 -324
  434. celerp-2.4.0/default_modules/celerp-subscriptions/tests/test_subscriptions.py +0 -394
  435. celerp-2.4.0/default_modules/celerp-verticals/celerp_verticals/routes.py +0 -256
  436. celerp-2.4.0/default_modules/celerp-verticals/tests/test_verticals_routers.py +0 -106
  437. celerp-2.4.0/default_modules/first_party.lock.json +0 -16
  438. celerp-2.4.0/pyproject.toml +0 -165
  439. celerp-2.4.0/test_helpers.py +0 -194
  440. celerp-2.4.0/ui/api_client.py +0 -3205
  441. celerp-2.4.0/ui/app.py +0 -544
  442. celerp-2.4.0/ui/components/activity.py +0 -1106
  443. celerp-2.4.0/ui/components/cloud_gate.py +0 -236
  444. celerp-2.4.0/ui/components/report_kit.py +0 -340
  445. celerp-2.4.0/ui/components/shell.py +0 -2151
  446. celerp-2.4.0/ui/components/table.py +0 -2563
  447. celerp-2.4.0/ui/config.py +0 -155
  448. celerp-2.4.0/ui/locales/am.json +0 -3116
  449. celerp-2.4.0/ui/locales/ar.json +0 -3116
  450. celerp-2.4.0/ui/locales/de.json +0 -3116
  451. celerp-2.4.0/ui/locales/en.json +0 -3116
  452. celerp-2.4.0/ui/locales/es.json +0 -3116
  453. celerp-2.4.0/ui/locales/fr.json +0 -3116
  454. celerp-2.4.0/ui/locales/id.json +0 -3116
  455. celerp-2.4.0/ui/locales/it.json +0 -3116
  456. celerp-2.4.0/ui/locales/ja.json +0 -3116
  457. celerp-2.4.0/ui/locales/pt.json +0 -3116
  458. celerp-2.4.0/ui/locales/th.json +0 -3116
  459. celerp-2.4.0/ui/locales/vi.json +0 -3116
  460. celerp-2.4.0/ui/routes/account.py +0 -638
  461. celerp-2.4.0/ui/routes/auth.py +0 -885
  462. celerp-2.4.0/ui/routes/contacts.py +0 -2439
  463. celerp-2.4.0/ui/routes/csv_import.py +0 -1605
  464. celerp-2.4.0/ui/routes/dashboard.py +0 -1101
  465. celerp-2.4.0/ui/routes/documents.py +0 -9802
  466. celerp-2.4.0/ui/routes/inventory.py +0 -8029
  467. celerp-2.4.0/ui/routes/settings.py +0 -4262
  468. celerp-2.4.0/ui/routes/settings_cloud.py +0 -1535
  469. celerp-2.4.0/ui/routes/settings_connectors.py +0 -1153
  470. celerp-2.4.0/ui/routes/settings_inventory.py +0 -672
  471. celerp-2.4.0/ui/routes/settings_payments.py +0 -182
  472. celerp-2.4.0/ui/routes/setup.py +0 -711
  473. celerp-2.4.0/ui/routes/subscriptions.py +0 -481
  474. celerp-2.4.0/ui/static/app.css +0 -3297
  475. {celerp-2.4.0 → celerp-2.5.2}/CLA.md +0 -0
  476. {celerp-2.4.0 → celerp-2.5.2}/LICENSE +0 -0
  477. {celerp-2.4.0 → celerp-2.5.2}/LICENSING.md +0 -0
  478. {celerp-2.4.0 → celerp-2.5.2}/MANIFEST.in +0 -0
  479. {celerp-2.4.0 → celerp-2.5.2}/NOTICE +0 -0
  480. {celerp-2.4.0 → celerp-2.5.2}/alembic.ini +0 -0
  481. {celerp-2.4.0 → celerp-2.5.2}/celerp/__init__.py +0 -0
  482. {celerp-2.4.0 → celerp-2.5.2}/celerp/__main__.py +0 -0
  483. {celerp-2.4.0 → celerp-2.5.2}/celerp/ai/__init__.py +0 -0
  484. {celerp-2.4.0 → celerp-2.5.2}/celerp/ai/cleanup.py +0 -0
  485. {celerp-2.4.0 → celerp-2.5.2}/celerp/ai/intent.py +0 -0
  486. {celerp-2.4.0 → celerp-2.5.2}/celerp/ai/models.py +0 -0
  487. {celerp-2.4.0 → celerp-2.5.2}/celerp/alembic.ini +0 -0
  488. {celerp-2.4.0 → celerp-2.5.2}/celerp/alembic_config.py +0 -0
  489. {celerp-2.4.0 → celerp-2.5.2}/celerp/capacity.py +0 -0
  490. {celerp-2.4.0 → celerp-2.5.2}/celerp/compat.py +0 -0
  491. {celerp-2.4.0 → celerp-2.5.2}/celerp/compute/__init__.py +0 -0
  492. {celerp-2.4.0 → celerp-2.5.2}/celerp/compute/aggregations.py +0 -0
  493. {celerp-2.4.0 → celerp-2.5.2}/celerp/compute/valuation.py +0 -0
  494. {celerp-2.4.0 → celerp-2.5.2}/celerp/connectors/__init__.py +0 -0
  495. {celerp-2.4.0 → celerp-2.5.2}/celerp/connectors/registry.py +0 -0
  496. {celerp-2.4.0 → celerp-2.5.2}/celerp/connectors/util.py +0 -0
  497. {celerp-2.4.0 → celerp-2.5.2}/celerp/constants.py +0 -0
  498. {celerp-2.4.0 → celerp-2.5.2}/celerp/db.py +0 -0
  499. {celerp-2.4.0 → celerp-2.5.2}/celerp/entitlement_preflight.py +0 -0
  500. {celerp-2.4.0 → celerp-2.5.2}/celerp/events/__init__.py +0 -0
  501. {celerp-2.4.0 → celerp-2.5.2}/celerp/events/types.py +0 -0
  502. {celerp-2.4.0 → celerp-2.5.2}/celerp/gateway/fixtures/entitlement_flags_fixture.json +0 -0
  503. {celerp-2.4.0 → celerp-2.5.2}/celerp/importers/__init__.py +0 -0
  504. {celerp-2.4.0 → celerp-2.5.2}/celerp/importers/importer.py +0 -0
  505. {celerp-2.4.0 → celerp-2.5.2}/celerp/importers/schema.py +0 -0
  506. {celerp-2.4.0 → celerp-2.5.2}/celerp/middleware.py +0 -0
  507. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/README.md +0 -0
  508. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/_data_reconcile.py +0 -0
  509. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/script.py.mako +0 -0
  510. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/a0b1c2d3e4f5_seed_landed_cost_clearing_accounts.py +0 -0
  511. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/a1b2c3d4e5f6_add_doc_share_tokens.py +0 -0
  512. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/b1c2d3e4f5a6_add_supporter_badges.py +0 -0
  513. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/b2c3d4e5f6a7_add_import_batches.py +0 -0
  514. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/c1d2e3f4a5b6_add_marketplace.py +0 -0
  515. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/c2d3e4f5a6b7_add_is_sync_to_shopify.py +0 -0
  516. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/c4d5e6f7a8b9_account_cash_flow_category.py +0 -0
  517. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/c9d8e7f6a5b4_seed_shrinkage_writeoff_account.py +0 -0
  518. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/d0e1f2a3b4c5_add_share_token_expiry.py +0 -0
  519. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/d2e3f4a5b6c7_add_password_reset_token.py +0 -0
  520. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/d5e6f7a8b9c0_rename_fx_rounding_to_fx_difference.py +0 -0
  521. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/e3f4a5b6c7d8_add_company_is_active.py +0 -0
  522. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/e4f5a6b7c8d9_backfill_connector_idempotency_key.py +0 -0
  523. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/e7c9a1b3d5f2_work_center_default_columns.py +0 -0
  524. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/f1a2b3c4d5e6_move_accounts_marketplace_to_modules.py +0 -0
  525. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/f3a4b5c6d7e8_purge_session_registry.py +0 -0
  526. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/f6a7b8c9d0e1_seed_fx_rounding_account.py +0 -0
  527. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/fd5de461e14e_initial_schema.py +0 -0
  528. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/g1h2i3j4k5l6_add_consignment_flag.py +0 -0
  529. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/h2i3j4k5l6m7_add_bank_accounts_and_reconciliation.py +0 -0
  530. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/j4k5l6m7n8o9_labels_db_persistence.py +0 -0
  531. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/k5l6m7n8o9p0_add_reconciliation_v2.py +0 -0
  532. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/l6m7n8o9p0q1_add_sync_runs_table.py +0 -0
  533. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/m7n8o9p0q1r2_add_connector_configs_and_outbound_queue.py +0 -0
  534. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/n8o9p0q1r2s3_backfill_payment_date.py +0 -0
  535. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/o9p0q1r2s3t4_backfill_item_price_fields.py +0 -0
  536. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/p1q2r3s4t5u6_add_session_registry_and_user_auth_state.py +0 -0
  537. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/q2r3s4t5u6v7_add_system_runtime_state.py +0 -0
  538. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/r3s4t5u6v7w8_add_projections_company_entity_type_index.py +0 -0
  539. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/s4t5u6v7w8x9_drop_user_company_id_role.py +0 -0
  540. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/t5u6v7w8x9y0_seed_inventory_sub_accounts.py +0 -0
  541. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/u6v7w8x9y0z1_backfill_item_prices_from_attributes.py +0 -0
  542. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/v7w8x9y0z1a2_backfill_purchase_unit_defaults.py +0 -0
  543. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/w8x9y0z1a2b3_backfill_category_unit_defaults.py +0 -0
  544. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/x7y8z9a0b1c2_add_projection_created_at.py +0 -0
  545. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/y8z9a0b1c2d3_per_company_ledger_idempotency.py +0 -0
  546. {celerp-2.4.0 → celerp-2.5.2}/celerp/migrations/versions/z9a0b1c2d3e4_work_centers.py +0 -0
  547. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/accounting.py +0 -0
  548. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/ai.py +0 -0
  549. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/auth.py +0 -0
  550. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/base.py +0 -0
  551. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/connector_config.py +0 -0
  552. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/import_batch.py +0 -0
  553. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/ledger.py +0 -0
  554. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/marketplace.py +0 -0
  555. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/notification.py +0 -0
  556. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/share.py +0 -0
  557. {celerp-2.4.0 → celerp-2.5.2}/celerp/models/supporter.py +0 -0
  558. {celerp-2.4.0 → celerp-2.5.2}/celerp/modules/__init__.py +0 -0
  559. {celerp-2.4.0 → celerp-2.5.2}/celerp/modules/audit.py +0 -0
  560. {celerp-2.4.0 → celerp-2.5.2}/celerp/modules/demotion.py +0 -0
  561. {celerp-2.4.0 → celerp-2.5.2}/celerp/modules/importer.py +0 -0
  562. {celerp-2.4.0 → celerp-2.5.2}/celerp/modules/meta.py +0 -0
  563. {celerp-2.4.0 → celerp-2.5.2}/celerp/modules/references.py +0 -0
  564. {celerp-2.4.0 → celerp-2.5.2}/celerp/modules/registry.py +0 -0
  565. {celerp-2.4.0 → celerp-2.5.2}/celerp/notifications/__init__.py +0 -0
  566. {celerp-2.4.0 → celerp-2.5.2}/celerp/notifications/service.py +0 -0
  567. {celerp-2.4.0 → celerp-2.5.2}/celerp/notifications/sse.py +0 -0
  568. {celerp-2.4.0 → celerp-2.5.2}/celerp/output/__init__.py +0 -0
  569. {celerp-2.4.0 → celerp-2.5.2}/celerp/output/branding.py +0 -0
  570. {celerp-2.4.0 → celerp-2.5.2}/celerp/output/share_render.py +0 -0
  571. {celerp-2.4.0 → celerp-2.5.2}/celerp/projections/__init__.py +0 -0
  572. {celerp-2.4.0 → celerp-2.5.2}/celerp/projections/handlers/__init__.py +0 -0
  573. {celerp-2.4.0 → celerp-2.5.2}/celerp/projections/handlers/marketplace.py +0 -0
  574. {celerp-2.4.0 → celerp-2.5.2}/celerp/projections/handlers/scanning.py +0 -0
  575. {celerp-2.4.0 → celerp-2.5.2}/celerp/projections/handlers/shopify.py +0 -0
  576. {celerp-2.4.0 → celerp-2.5.2}/celerp/projections/handlers/system.py +0 -0
  577. {celerp-2.4.0 → celerp-2.5.2}/celerp/routers/__init__.py +0 -0
  578. {celerp-2.4.0 → celerp-2.5.2}/celerp/routers/attachments.py +0 -0
  579. {celerp-2.4.0 → celerp-2.5.2}/celerp/routers/events.py +0 -0
  580. {celerp-2.4.0 → celerp-2.5.2}/celerp/routers/ledger.py +0 -0
  581. {celerp-2.4.0 → celerp-2.5.2}/celerp/routers/notifications.py +0 -0
  582. {celerp-2.4.0 → celerp-2.5.2}/celerp/routers/stars.py +0 -0
  583. {celerp-2.4.0 → celerp-2.5.2}/celerp/schemas/__init__.py +0 -0
  584. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/__init__.py +0 -0
  585. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/activity_redaction.py +0 -0
  586. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/backup_export.py +0 -0
  587. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/backup_scheduler.py +0 -0
  588. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/backup_state.py +0 -0
  589. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/cogs_backfill.py +0 -0
  590. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/dev_release_guard.py +0 -0
  591. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/document_lines.py +0 -0
  592. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/email.py +0 -0
  593. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/je_keys.py +0 -0
  594. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/line_measures.py +0 -0
  595. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/list_behavior.py +0 -0
  596. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/permissions.py +0 -0
  597. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/pricing.py +0 -0
  598. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/relay_share.py +0 -0
  599. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/reorder.py +0 -0
  600. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/runtime_state.py +0 -0
  601. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/session_tracker.py +0 -0
  602. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/shipping.py +0 -0
  603. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/star_cta.py +0 -0
  604. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/status_doc_backfill.py +0 -0
  605. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/supporter_badge.py +0 -0
  606. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/system_health.py +0 -0
  607. {celerp-2.4.0 → celerp-2.5.2}/celerp/services/units.py +0 -0
  608. {celerp-2.4.0 → celerp-2.5.2}/celerp/tax_regimes.py +0 -0
  609. {celerp-2.4.0 → celerp-2.5.2}/celerp.egg-info/dependency_links.txt +0 -0
  610. {celerp-2.4.0 → celerp-2.5.2}/celerp.egg-info/entry_points.txt +0 -0
  611. {celerp-2.4.0 → celerp-2.5.2}/celerp.egg-info/top_level.txt +0 -0
  612. {celerp-2.4.0 → celerp-2.5.2}/conftest_support.py +0 -0
  613. {celerp-2.4.0 → celerp-2.5.2}/default_modules/__init__.py +0 -0
  614. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/LICENSE +0 -0
  615. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/__init__.py +0 -0
  616. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/__init__.py +0 -0
  617. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/api_setup.py +0 -0
  618. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/csv_parser.py +0 -0
  619. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/matcher.py +0 -0
  620. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/models.py +0 -0
  621. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/projections.py +0 -0
  622. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/search.py +0 -0
  623. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/celerp_accounting/ui_routes.py +0 -0
  624. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/balance-sheet.html +0 -0
  625. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/cash-flow.html +0 -0
  626. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/extended-journal-csv.csv +0 -0
  627. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/extended-journal-print.html +0 -0
  628. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/extended-journal.html +0 -0
  629. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/general-ledger.html +0 -0
  630. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/journal-csv.csv +0 -0
  631. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/journal-print.html +0 -0
  632. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/journal.html +0 -0
  633. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/ledger.html +0 -0
  634. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/pnl.html +0 -0
  635. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/statement.html +0 -0
  636. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/report_goldens/trial-balance.html +0 -0
  637. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/test_accounting_banking.py +0 -0
  638. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/test_accounting_import_idempotency.py +0 -0
  639. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/test_financial_reports_ui.py +0 -0
  640. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/test_journal_gl_soa_ui.py +0 -0
  641. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/test_reconciliation_v2.py +0 -0
  642. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-accounting/tests/test_reports_end_to_end.py +0 -0
  643. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-admin/__init__.py +0 -0
  644. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-admin/celerp_admin/__init__.py +0 -0
  645. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-admin/celerp_admin/setup.py +0 -0
  646. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/__init__.py +0 -0
  647. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/celerp_ai/__init__.py +0 -0
  648. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/celerp_ai/setup.py +0 -0
  649. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/tests/conftest.py +0 -0
  650. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/tests/test_cleanup.py +0 -0
  651. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/tests/test_intent.py +0 -0
  652. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/tests/test_memory.py +0 -0
  653. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-ai/tests/test_models.py +0 -0
  654. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-backup/__init__.py +0 -0
  655. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-backup/celerp_backup/__init__.py +0 -0
  656. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-backup/celerp_backup/setup.py +0 -0
  657. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-connectors/celerp_connectors/__init__.py +0 -0
  658. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-connectors/celerp_connectors/models.py +0 -0
  659. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-connectors/tests/__init__.py +0 -0
  660. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-connectors/tests/test_compliance.py +0 -0
  661. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-connectors/tests/test_quickbooks.py +0 -0
  662. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-contacts/LICENSE +0 -0
  663. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-contacts/__init__.py +0 -0
  664. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-contacts/celerp_contacts/__init__.py +0 -0
  665. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-contacts/celerp_contacts/migrations.py +0 -0
  666. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-contacts/celerp_contacts/projections.py +0 -0
  667. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-contacts/celerp_contacts/search.py +0 -0
  668. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-contacts/celerp_contacts/ui_routes.py +0 -0
  669. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-dashboard/LICENSE +0 -0
  670. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-dashboard/__init__.py +0 -0
  671. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-dashboard/celerp_dashboard/__init__.py +0 -0
  672. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-dashboard/celerp_dashboard/routes.py +0 -0
  673. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-dashboard/celerp_dashboard/setup.py +0 -0
  674. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/LICENSE +0 -0
  675. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/__init__.py +0 -0
  676. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/__init__.py +0 -0
  677. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/api_setup.py +0 -0
  678. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/doc_constants.py +0 -0
  679. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/doc_email.py +0 -0
  680. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/models_share.py +0 -0
  681. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/search.py +0 -0
  682. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/sequences.py +0 -0
  683. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/taxes.py +0 -0
  684. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/celerp_docs/ui_routes.py +0 -0
  685. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/tests/conftest.py +0 -0
  686. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/tests/test_bulk_payment_alloc_lock.py +0 -0
  687. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/tests/test_consolidate_lots.py +0 -0
  688. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-docs/tests/test_memo_close_projection.py +0 -0
  689. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/LICENSE +0 -0
  690. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/__init__.py +0 -0
  691. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/celerp_inventory/__init__.py +0 -0
  692. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/celerp_inventory/models_import_batch.py +0 -0
  693. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/celerp_inventory/routes_scanning.py +0 -0
  694. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/celerp_inventory/ui_routes.py +0 -0
  695. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/tests/test_item_recipe_projection.py +0 -0
  696. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/tests/test_item_workflow_projection.py +0 -0
  697. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-inventory/tests/test_landed_cost_projection.py +0 -0
  698. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/LICENSE +0 -0
  699. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/__init__.py +0 -0
  700. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/__init__.py +0 -0
  701. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/am.json +0 -0
  702. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/ar.json +0 -0
  703. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/de.json +0 -0
  704. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/en.json +0 -0
  705. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/es.json +0 -0
  706. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/fr.json +0 -0
  707. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/id.json +0 -0
  708. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/it.json +0 -0
  709. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/ja.json +0 -0
  710. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/pt.json +0 -0
  711. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/th.json +0 -0
  712. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/locales/vi.json +0 -0
  713. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/models.py +0 -0
  714. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/presets.py +0 -0
  715. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/service.py +0 -0
  716. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/celerp_labels/ui_routes.py +0 -0
  717. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/requirements.txt +0 -0
  718. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/tests/test_labels.py +0 -0
  719. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-labels/tests/test_labels_module.py +0 -0
  720. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/LICENSE +0 -0
  721. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/__init__.py +0 -0
  722. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/__init__.py +0 -0
  723. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/costing.py +0 -0
  724. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/expansion.py +0 -0
  725. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/labor.py +0 -0
  726. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/migrations.py +0 -0
  727. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/projection_handler.py +0 -0
  728. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/search.py +0 -0
  729. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/celerp_manufacturing/ui_routes.py +0 -0
  730. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/requirements.txt +0 -0
  731. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_completion_lock_order.py +0 -0
  732. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_labor_providers.py +0 -0
  733. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_manufacturing_import_idempotency.py +0 -0
  734. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_mfg_events.py +0 -0
  735. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_recipe_costing.py +0 -0
  736. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_recipe_expansion.py +0 -0
  737. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_where_used.py +0 -0
  738. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-manufacturing/tests/test_workflow_time.py +0 -0
  739. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-reports/LICENSE +0 -0
  740. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-reports/__init__.py +0 -0
  741. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-reports/celerp_reports/__init__.py +0 -0
  742. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-reports/celerp_reports/api_setup.py +0 -0
  743. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-reports/celerp_reports/routes.py +0 -0
  744. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-reports/celerp_reports/ui_routes.py +0 -0
  745. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-reports/tests/test_reports_unit.py +0 -0
  746. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-subscriptions/LICENSE +0 -0
  747. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-subscriptions/__init__.py +0 -0
  748. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-subscriptions/celerp_subscriptions/__init__.py +0 -0
  749. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-subscriptions/celerp_subscriptions/search.py +0 -0
  750. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-subscriptions/celerp_subscriptions/ui_routes.py +0 -0
  751. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-subscriptions/tests/test_subscriptions_ui.py +0 -0
  752. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/LICENSE +0 -0
  753. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/__init__.py +0 -0
  754. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/__init__.py +0 -0
  755. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/accessory_fashion.json +0 -0
  756. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/activewear.json +0 -0
  757. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/art_photography.json +0 -0
  758. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/audio_equipment.json +0 -0
  759. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/bag_handbag.json +0 -0
  760. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/banknote.json +0 -0
  761. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/beauty_tool.json +0 -0
  762. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/bed_bedroom.json +0 -0
  763. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/beer.json +0 -0
  764. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/beverage_nonalc.json +0 -0
  765. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/body_part_auto.json +0 -0
  766. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/book.json +0 -0
  767. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/bottoms.json +0 -0
  768. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/brake_suspension.json +0 -0
  769. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/bullion_coin.json +0 -0
  770. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/camera.json +0 -0
  771. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/colored_stone.json +0 -0
  772. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/comic.json +0 -0
  773. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/commercial_space.json +0 -0
  774. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/component_part.json +0 -0
  775. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/confectionery.json +0 -0
  776. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/consulting_service.json +0 -0
  777. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/decorative_art.json +0 -0
  778. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/diamond.json +0 -0
  779. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/drawing.json +0 -0
  780. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/dress_jumpsuit.json +0 -0
  781. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/electrical_auto.json +0 -0
  782. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/electrical_component.json +0 -0
  783. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/emerald.json +0 -0
  784. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/engine_part.json +0 -0
  785. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/fastener.json +0 -0
  786. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/fertilizer_chemical.json +0 -0
  787. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/film_video.json +0 -0
  788. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/fine_writing_instrument.json +0 -0
  789. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/fluid_lubricant.json +0 -0
  790. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/footwear.json +0 -0
  791. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/fragrance.json +0 -0
  792. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/fresh_food.json +0 -0
  793. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/fresh_produce.json +0 -0
  794. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/frozen_food.json +0 -0
  795. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/gaming_console.json +0 -0
  796. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/gold_bullion.json +0 -0
  797. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/grain_cereal.json +0 -0
  798. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/haircare.json +0 -0
  799. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/hand_tool.json +0 -0
  800. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/ingredient_bulk.json +0 -0
  801. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/interior_part.json +0 -0
  802. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/jewelry.json +0 -0
  803. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/kitchen_dining.json +0 -0
  804. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/laptop.json +0 -0
  805. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/lighting.json +0 -0
  806. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/livestock_feed.json +0 -0
  807. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/makeup.json +0 -0
  808. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/measuring_instrument.json +0 -0
  809. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/medal_token.json +0 -0
  810. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/mineral_specimen.json +0 -0
  811. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/mobile_phone.json +0 -0
  812. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/music_cd.json +0 -0
  813. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/music_vinyl.json +0 -0
  814. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/nail.json +0 -0
  815. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/numismatic_coin.json +0 -0
  816. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/outdoor_furniture.json +0 -0
  817. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/outerwear.json +0 -0
  818. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/packaged_food.json +0 -0
  819. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/painting.json +0 -0
  820. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/parking_bay.json +0 -0
  821. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/pearl.json +0 -0
  822. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/personal_care.json +0 -0
  823. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/pipe_plumbing.json +0 -0
  824. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/platinum_bullion.json +0 -0
  825. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/power_tool.json +0 -0
  826. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/print_edition.json +0 -0
  827. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/residential_unit.json +0 -0
  828. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/rough_gemstone.json +0 -0
  829. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/ruby.json +0 -0
  830. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/saas_plan.json +0 -0
  831. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/safety_ppe.json +0 -0
  832. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/sapphire.json +0 -0
  833. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/sculpture.json +0 -0
  834. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/seating.json +0 -0
  835. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/seeds.json +0 -0
  836. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/silver_bullion.json +0 -0
  837. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/skincare.json +0 -0
  838. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/soft_furnishing.json +0 -0
  839. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/software_addon.json +0 -0
  840. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/software_license.json +0 -0
  841. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/spirit.json +0 -0
  842. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/storage_furniture.json +0 -0
  843. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/swimwear.json +0 -0
  844. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/table_desk.json +0 -0
  845. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/tablet.json +0 -0
  846. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/tire_wheel.json +0 -0
  847. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/tops.json +0 -0
  848. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/trading_card.json +0 -0
  849. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/tv_display.json +0 -0
  850. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/video_game.json +0 -0
  851. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/watch.json +0 -0
  852. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/watch_strap.json +0 -0
  853. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/categories/wine.json +0 -0
  854. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/agricultural.json +0 -0
  855. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/artwork.json +0 -0
  856. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/automotive.json +0 -0
  857. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/blank.json +0 -0
  858. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/books_media.json +0 -0
  859. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/coins_precious_metals.json +0 -0
  860. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/consulting.json +0 -0
  861. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/cosmetics.json +0 -0
  862. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/electronics.json +0 -0
  863. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/fashion.json +0 -0
  864. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/food_beverage.json +0 -0
  865. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/furniture.json +0 -0
  866. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/gemstones.json +0 -0
  867. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/hardware.json +0 -0
  868. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/property_rental.json +0 -0
  869. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/saas.json +0 -0
  870. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/watches.json +0 -0
  871. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/presets/wine_spirits.json +0 -0
  872. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/celerp_verticals/ui_routes.py +0 -0
  873. {celerp-2.4.0 → celerp-2.5.2}/default_modules/celerp-verticals/tests/test_verticals.py +0 -0
  874. {celerp-2.4.0 → celerp-2.5.2}/legal/OFFICIAL-COMPONENTS.md +0 -0
  875. {celerp-2.4.0 → celerp-2.5.2}/legal/TRADEMARK.md +0 -0
  876. {celerp-2.4.0 → celerp-2.5.2}/packaging/winget/Celerp.Celerp.installer.yaml +0 -0
  877. {celerp-2.4.0 → celerp-2.5.2}/packaging/winget/Celerp.Celerp.locale.en-US.yaml +0 -0
  878. {celerp-2.4.0 → celerp-2.5.2}/packaging/winget/Celerp.Celerp.yaml +0 -0
  879. {celerp-2.4.0 → celerp-2.5.2}/packaging/winget/README.md +0 -0
  880. {celerp-2.4.0 → celerp-2.5.2}/setup.cfg +0 -0
  881. {celerp-2.4.0 → celerp-2.5.2}/ui/__init__.py +0 -0
  882. {celerp-2.4.0 → celerp-2.5.2}/ui/components/__init__.py +0 -0
  883. {celerp-2.4.0 → celerp-2.5.2}/ui/components/attrs.py +0 -0
  884. {celerp-2.4.0 → celerp-2.5.2}/ui/components/backup.py +0 -0
  885. {celerp-2.4.0 → celerp-2.5.2}/ui/components/currency.py +0 -0
  886. {celerp-2.4.0 → celerp-2.5.2}/ui/components/files.py +0 -0
  887. {celerp-2.4.0 → celerp-2.5.2}/ui/components/journal.py +0 -0
  888. {celerp-2.4.0 → celerp-2.5.2}/ui/components/notes.py +0 -0
  889. {celerp-2.4.0 → celerp-2.5.2}/ui/components/phone.py +0 -0
  890. {celerp-2.4.0 → celerp-2.5.2}/ui/i18n.py +0 -0
  891. {celerp-2.4.0 → celerp-2.5.2}/ui/marketplace_catalog.py +0 -0
  892. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/__init__.py +0 -0
  893. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/accounting.py +0 -0
  894. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/accounting_import.py +0 -0
  895. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/commercial.py +0 -0
  896. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/docs_import.py +0 -0
  897. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/events.py +0 -0
  898. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/financial_reports.py +0 -0
  899. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/lists_import.py +0 -0
  900. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/manufacturing.py +0 -0
  901. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/modules_page.py +0 -0
  902. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/notifications.py +0 -0
  903. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/reconciliation.py +0 -0
  904. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/reports.py +0 -0
  905. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/search.py +0 -0
  906. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/settings_accounting.py +0 -0
  907. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/settings_contacts.py +0 -0
  908. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/settings_general.py +0 -0
  909. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/settings_import.py +0 -0
  910. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/settings_manufacturing.py +0 -0
  911. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/settings_purchasing.py +0 -0
  912. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/settings_sales.py +0 -0
  913. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/stars.py +0 -0
  914. {celerp-2.4.0 → celerp-2.5.2}/ui/routes/subscriptions_import.py +0 -0
  915. {celerp-2.4.0 → celerp-2.5.2}/ui/security.py +0 -0
  916. {celerp-2.4.0 → celerp-2.5.2}/ui/static/htmx.min.js +0 -0
  917. {celerp-2.4.0 → celerp-2.5.2}/ui/static/icon.png +0 -0
  918. {celerp-2.4.0 → celerp-2.5.2}/ui/static/logo.png +0 -0
  919. {celerp-2.4.0 → celerp-2.5.2}/ui/static/vendor/intl-tel-input/img/flags.webp +0 -0
  920. {celerp-2.4.0 → celerp-2.5.2}/ui/static/vendor/intl-tel-input/img/flags@2x.webp +0 -0
  921. {celerp-2.4.0 → celerp-2.5.2}/ui/static/vendor/intl-tel-input/intlTelInput.min.css +0 -0
  922. {celerp-2.4.0 → celerp-2.5.2}/ui/static/vendor/intl-tel-input/intlTelInput.min.js +0 -0
  923. {celerp-2.4.0 → celerp-2.5.2}/ui/static/vendor/intl-tel-input/intlTelInputWithUtils.min.js +0 -0
  924. {celerp-2.4.0 → celerp-2.5.2}/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.2/PKG-INFO ADDED
@@ -0,0 +1,397 @@
1
+ Metadata-Version: 2.4
2
+ Name: celerp
3
+ Version: 2.5.2
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==50.0.1
147
+ Requires-Dist: deprecated==1.3.1
148
+ Requires-Dist: ecdsa==0.19.2
149
+ Requires-Dist: et-xmlfile==2.0.0
150
+ Requires-Dist: exceptiongroup==1.3.1; python_full_version < "3.11"
151
+ Requires-Dist: fastapi==0.141.1
152
+ Requires-Dist: fastcore==2.2.30
153
+ Requires-Dist: greenlet==3.5.6
154
+ Requires-Dist: h11==0.16.0
155
+ Requires-Dist: httpcore==1.0.9
156
+ Requires-Dist: httpcore2==2.13.1; sys_platform != "emscripten"
157
+ Requires-Dist: httptools==0.8.0
158
+ Requires-Dist: httpx==0.28.1
159
+ Requires-Dist: httpx2==2.13.1
160
+ Requires-Dist: httpx2-jsfetch==1.0; python_full_version >= "3.12" and sys_platform == "emscripten"
161
+ Requires-Dist: idna==3.20
162
+ Requires-Dist: itsdangerous==2.2.0
163
+ Requires-Dist: limits==5.8.0
164
+ Requires-Dist: mako==1.4.3
165
+ Requires-Dist: markupsafe==3.0.3
166
+ Requires-Dist: numpy==2.2.6; python_full_version < "3.11"
167
+ Requires-Dist: numpy==2.4.6; python_full_version == "3.11.*"
168
+ Requires-Dist: numpy==2.5.3; python_full_version >= "3.12"
169
+ Requires-Dist: oauthlib==3.3.1
170
+ Requires-Dist: openpyxl==3.1.5
171
+ Requires-Dist: packaging==26.3
172
+ Requires-Dist: passlib==1.7.4
173
+ Requires-Dist: pillow==12.3.0
174
+ Requires-Dist: psutil==7.2.2
175
+ Requires-Dist: psycopg2-binary==2.9.13
176
+ Requires-Dist: pyasn1==0.6.4
177
+ Requires-Dist: pycparser==3.0; implementation_name != "PyPy" and platform_python_implementation != "PyPy"
178
+ Requires-Dist: pydantic==2.13.5
179
+ Requires-Dist: pydantic-core==2.46.5
180
+ Requires-Dist: pydantic-settings==2.15.0
181
+ Requires-Dist: pypdf==6.19.0
182
+ Requires-Dist: python-barcode==0.16.1
183
+ Requires-Dist: python-dateutil==2.9.0.post0
184
+ Requires-Dist: python-dotenv==1.2.3
185
+ Requires-Dist: python-fasthtml==0.14.13
186
+ Requires-Dist: python-jose==3.5.0
187
+ Requires-Dist: python-multipart==0.0.32
188
+ Requires-Dist: pyyaml==6.0.3
189
+ Requires-Dist: qrcode==8.2
190
+ Requires-Dist: reportlab==5.0.1
191
+ Requires-Dist: rsa==4.9.1
192
+ Requires-Dist: six==1.17.0
193
+ Requires-Dist: slowapi==0.1.10
194
+ Requires-Dist: soupsieve==2.10
195
+ Requires-Dist: sqlalchemy==2.0.54; python_full_version < "3.11"
196
+ Requires-Dist: sqlalchemy==2.1.1; python_full_version >= "3.11"
197
+ Requires-Dist: starlette==1.7.0
198
+ Requires-Dist: tomli==2.4.1; python_full_version < "3.11"
199
+ Requires-Dist: truststore==0.10.4; sys_platform != "emscripten"
200
+ Requires-Dist: typing-extensions==4.16.0
201
+ Requires-Dist: typing-inspection==0.4.4
202
+ Requires-Dist: tzdata==2026.4
203
+ Requires-Dist: uvicorn==0.54.0
204
+ Requires-Dist: uvloop==0.22.1; platform_python_implementation != "PyPy" and sys_platform != "cygwin" and sys_platform != "win32"
205
+ Requires-Dist: watchfiles==1.3.0
206
+ Requires-Dist: websockets==16.1.1; python_full_version < "3.11"
207
+ Requires-Dist: websockets==17.1; python_full_version >= "3.11"
208
+ Requires-Dist: wrapt==2.4.1
209
+ Provides-Extra: dev
210
+ Requires-Dist: pytest>=8.0; extra == "dev"
211
+ Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
212
+ Requires-Dist: pytest-cov>=5.0; extra == "dev"
213
+ Requires-Dist: faker>=24.0; extra == "dev"
214
+ Requires-Dist: respx>=0.21; extra == "dev"
215
+ Requires-Dist: playwright<1.62,>=1.43; extra == "dev"
216
+ Requires-Dist: pytest-playwright>=0.5; extra == "dev"
217
+ Requires-Dist: pytest-timeout>=2.3; extra == "dev"
218
+ Requires-Dist: pytest-xdist>=3.5; extra == "dev"
219
+ Requires-Dist: testcontainers[postgres]>=4.0; extra == "dev"
220
+ Provides-Extra: prod
221
+ Requires-Dist: gunicorn==26.2.0; extra == "prod"
222
+ Dynamic: license-file
223
+
224
+ # Celerp
225
+
226
+ **Free business management software for you and your office. Setup in minutes. Easy enough for solo entrepreneurs and powerful enough for large enterprises**
227
+
228
+ Inventory, invoicing, purchasing, consignment, manufacturing, accounting, and CRM - in one app, on your computer. No subscription. No cloud required.
229
+
230
+ Website: [www.celerp.com](https://www.celerp.com)
231
+
232
+ 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.
233
+
234
+ [![Downloads](https://static.pepy.tech/badge/celerp)](https://pepy.tech/project/celerp)
235
+ [![Tests](https://github.com/celerp/celerp/actions/workflows/ci.yml/badge.svg)](https://github.com/celerp/celerp/actions)
236
+ [![License](https://img.shields.io/badge/license-BUSL--1.1-blue)](LICENSE)
237
+
238
+ <!-- PRESS_KIT:root-hero start -->
239
+ ![Celerp manufacturing cost worksheet](docs/press-kit/screenshots/manufacturing-worksheet.png)
240
+ <!-- PRESS_KIT:root-hero end -->
241
+
242
+ ## Screenshots
243
+
244
+ Real double-entry accounting, multi-location inventory, manufacturing, and a built-in REST API - one self-hosted app.
245
+
246
+ <!-- PRESS_KIT:root-grid start -->
247
+ | | |
248
+ |---|---|
249
+ | ![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 |
250
+ | ![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 |
251
+ | ![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 |
252
+ | ![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 |
253
+ <!-- PRESS_KIT:root-grid end -->
254
+
255
+ More in the [press kit](docs/press-kit/).
256
+
257
+ ---
258
+
259
+ ## Install
260
+
261
+ | Platform | Link |
262
+ |----------|------|
263
+ | Windows (.exe) | [Download](https://celerp.com/download-thanks.html?dl=win) |
264
+ | Linux (.deb) | [Download](https://celerp.com/download-thanks.html?dl=linux) |
265
+ | macOS (.dmg) | [Download](https://celerp.com/download-thanks.html?dl=mac) |
266
+
267
+ **Double-click. No account. No credit card. Your computer securely becomes the server for your office**
268
+
269
+ Or install via pip:
270
+
271
+ ```bash
272
+ pip install celerp
273
+ celerp init # sets up the database and launches Celerp
274
+ ```
275
+
276
+ Open **http://localhost:8080**. Done.
277
+ Your office can securely access the system at your IP address :8080.
278
+
279
+ No PostgreSQL to install: `celerp init` uses your existing PostgreSQL server if one is
280
+ running, and otherwise starts a self-contained bundled database — no `sudo`, no system
281
+ service. Point it at a specific server with `celerp init --db-url postgresql+asyncpg://…`.
282
+
283
+ Running headless or under a process manager? Use `celerp init --no-start` to set up
284
+ without launching, then have your service run `celerp start` — see
285
+ [Run as a service (systemd)](CONTRIBUTING.md#run-as-a-service-systemd).
286
+ Updates install automatically overnight; the owner can turn that off from the update
287
+ card in the notifications panel.
288
+
289
+ ---
290
+
291
+ ## What's inside
292
+
293
+ - Track inventory across locations, scan barcodes, print labels
294
+ - Send invoices, purchase orders, quotations, credit notes
295
+ - Double-entry accounting with chart of accounts, P&L, balance sheet
296
+ - Connect Shopify, WooCommerce, QuickBooks, Xero
297
+ - Manufacturing - BOMs, production orders, merge/split/transform
298
+ - CRM - contacts, pipeline, memos, activity feed
299
+ - Recurring subscriptions with automatic invoicing
300
+ - CSV import/export everything - idempotent, audited, column-mapped
301
+ - Multi-company from one install
302
+ - Role-based permissions - five access levels (viewer, operator, manager, admin, owner) for controlled employee access
303
+ - Works offline, no internet required
304
+
305
+ ---
306
+
307
+ ## How it works
308
+
309
+ 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.
310
+
311
+ - **No setup** - the desktop app bundles Postgres, runs migrations on launch, opens in your browser
312
+ - **No lock-in** - your data stays in a standard Postgres database you control
313
+ - **Teams** - run as a local server, teammates connect over the LAN
314
+
315
+ ---
316
+
317
+ ## Modules
318
+
319
+ Every business domain is a self-contained module. The full set ships with the download:
320
+
321
+ | Module | What it does |
322
+ |--------|-------------|
323
+ | `celerp-inventory` | Items, stock levels, locations, barcode scanning, valuation |
324
+ | `celerp-contacts` | Contacts, addresses, tags, notes, file attachments |
325
+ | `celerp-docs` | Invoices, POs, quotations, credit notes, receipts |
326
+ | `celerp-accounting` | Chart of accounts, journal entries, P&L, balance sheet |
327
+ | `celerp-reports` | AR/AP aging, sales, purchases, inventory valuation |
328
+ | `celerp-subscriptions` | Recurring billing, auto-invoice generation |
329
+ | `celerp-manufacturing` | BOMs, production orders, merge/split/transform |
330
+ | `celerp-labels` | Label printing, barcode generation |
331
+ | `celerp-verticals` | Industry presets - configure for your business type on first run |
332
+
333
+ The onboarding wizard lets you pick your industry. Modules can be toggled any time at **Settings > Modules**.
334
+
335
+ ### Build your own
336
+
337
+ > "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."
338
+ >
339
+ > Noah Severs, Founder
340
+
341
+ 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.
342
+
343
+ - [**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
344
+ - [**Build a module**](https://www.celerp.com/docs/modules) - the guide
345
+ - [**community-modules**](https://github.com/celerp/community-modules) - a directory of community-built modules, and how to list yours
346
+
347
+ ---
348
+
349
+ ## Architecture
350
+
351
+ - **Event-sourced** - every change is an immutable ledger entry, projections materialize queryable state
352
+ - **Modular** - each domain is a plugin with its own models, routes, and projections
353
+ - **Python/FastAPI** backend, **FastHTML** UI, embedded **PostgreSQL**
354
+ - SQLite in-memory for tests - no external dependencies to run the test suite
355
+
356
+ ---
357
+
358
+ ## Development
359
+
360
+ ```bash
361
+ git clone git@github.com:celerp/celerp.git
362
+ cd celerp
363
+ python3 -m venv .venv && source .venv/bin/activate
364
+ pip install -e ".[dev]"
365
+ celerp init # creates DB, runs migrations, starts servers
366
+ ```
367
+
368
+ `celerp init` boots a bundled PostgreSQL when no server is running, so no `sudo` and no
369
+ system Postgres are required. To develop against your own server instead, pass
370
+ `--db-url postgresql+asyncpg://…`.
371
+
372
+ Open **http://localhost:8080**. Run tests with `pytest tests/`.
373
+
374
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for environment variables, troubleshooting, and coding guidelines.
375
+
376
+ ---
377
+
378
+ ## Contributing
379
+
380
+ Issues and PRs welcome. The module system makes it straightforward to add new business domains without touching the kernel.
381
+
382
+ ---
383
+
384
+ ## License
385
+
386
+ **Free to download. Free to self-host. Free to build on.**
387
+
388
+ Celerp is open-core:
389
+
390
+ - **Source-available core engine** under the [Business Source License 1.1](LICENSE) -
391
+ self-hosting permitted, contributions welcome.
392
+ - **An MIT-licensed module ecosystem** - the default business modules are MIT, so you can
393
+ fork them, build your own modules, and ship them however you like. See [LICENSING.md](LICENSING.md).
394
+ - **A source available application** (official UI, document/PDF output and AI & Connect services).
395
+
396
+ See [LICENSING.md](LICENSING.md) for the full map and [TRADEMARK.md](legal/TRADEMARK.md) for use of the Celerp
397
+ name. One restriction: don't resell Celerp itself as a competing product.